-1

我想知道这些标志及其内部数据类型的真正含义是什么?我看到很多这样的代码:

ArrayAdapter<String> adapter =  new ArrayAdapter<String> ( this, android.R.layout.simple_list_item_1, names );

java和android中有很多代码,我认为c#使用这种类型的声明对象。我想知道这些声明类型是什么以及主题的用途是什么?提前致谢。

4

3 回答 3

2

它们声明代码(在本例中为 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 中的泛型

于 2013-10-26T20:20:38.547 回答
0

<>用于键入泛型类。一个常见的例子是列表或地图。

因此列表的源代码如下所示:

public class MyList<T> extends List<T> 

然后,您可以创建如下方法:

public void add(T value)

要了解有关泛型的更多信息,您可以在此处查看官方指南:http: //docs.oracle.com/javase/tutorial/java/generics/ (java)

于 2013-10-26T20:23:42.500 回答
0

假设你想在列表视图中显示数据,这里使用了 Array Adapter

适配器 膨胀 ListView 中每一行的布局

这里的适配器是 ArrayAdapter 类的对象,用于为每一行扩展布局。 字符串 是定义具有字符串类型数据的列表。 定义了对象 android.R.layout.simple_list_item_1 的当前状态是系统生成的资源。 名称是定义将在 ListView 中播放的字符串数组

于 2013-10-26T20:25:19.047 回答