我想知道这些标志及其内部数据类型的真正含义是什么?我看到很多这样的代码:
ArrayAdapter<String> adapter = new ArrayAdapter<String> ( this, android.R.layout.simple_list_item_1, names );
java和android中有很多代码,我认为c#使用这种类型的声明对象。我想知道这些声明类型是什么以及主题的用途是什么?提前致谢。
它们声明代码(在本例中为 ArrayAdapter)将持有的对象类型。Java 中的泛型允许某些代码可能保存任何类型的对象,但一般来说,如果您可以指定您希望代码保存的类型,您应该这样做。以 ArrayList 为例:
Arraylist<String> myList = new ArrayList<String>() //Holds Strings
Arraylist<Integer> myList = new ArrayList<Integer>() //Holds ints
Arraylist<aCustomClass> myList = new ArrayList<aCustomClass>() //Holds objects of a class I made called aCustomClass
Arraylist myList = new ArrayList() //Is set to recieve any type of object
如果你没有指定你想要什么类型的对象,那么它期望一个“原始类型”,这被认为是不安全/不好的做法。要了解更多信息,请搜索 Java 中的泛型
<>
用于键入泛型类。一个常见的例子是列表或地图。
因此列表的源代码如下所示:
public class MyList<T> extends List<T>
然后,您可以创建如下方法:
public void add(T value)
要了解有关泛型的更多信息,您可以在此处查看官方指南:http: //docs.oracle.com/javase/tutorial/java/generics/ (java)
假设你想在列表视图中显示数据,这里使用了 Array Adapter
适配器 膨胀 ListView 中每一行的布局
这里的适配器是 ArrayAdapter 类的对象,用于为每一行扩展布局。 字符串 是定义具有字符串类型数据的列表。 这定义了对象 android.R.layout.simple_list_item_1 的当前状态是系统生成的资源。 名称是定义将在 ListView 中播放的字符串数组