что такое T [] объект? - PullRequest
       17

что такое T [] объект?

4 голосов
/ 11 февраля 2012

Конструктор ArrayAdapter выглядит следующим образом:

ArrayAdapter(Context context, int textViewResourceId, T[] objects)

Я новичок в Java и Android, я не видел тип данных T[] раньше, кто-нибудь может объяснить, что это такое, или дать мне какую-нибудь веб-страницу об этом?

Ответы [ 4 ]

7 голосов
/ 11 февраля 2012

T является либо конкретным типом класса (маловероятным), либо универсальным классом.Посмотрите на заголовок вашего класса, чтобы увидеть, так ли это.

IE

Class SomeClassType<T> {}

Учебные пособия по дженерикам и их работе можно найти здесь http://docs.oracle.com/javase/tutorial/java/generics/index.html

1 голос
/ 11 февраля 2012

http://docs.oracle.com/javase/tutorial/java/generics/gentypes.html

Это универсальный тип, это означает, что вы можете указать любой тип, который хотите заменить универсальным типом T.

0 голосов
/ 11 февраля 2012

Как уже упоминалось, T в этом случае относится к универсальному типу.Другими словами, ArrayAdapter может использоваться для обработки объектов любого типа, чтобы связать текстовое представление этих объектов с Android TextViews.

Простым примером может быть использование массива типаString ...

ArrayAdapter<String> myArrayAdapter;
String[] myArray = new String[] { "Hello", "World" } ;
myArrayAdapter = new ArrayAdapter<String>(this, R.id.my_textview, myArray);

Использование Strings для ArrayAdapter, вероятно, является наиболее распространенным подходом, хотя может использоваться любой объект, который реализует toString() для возврата чего-либо значимого ...

ArrayAdapter<SomeObject> myArrayAdapter;
SomeObject[] myArray = new SomeObject[] { ... } ;
myArrayAdapter = new ArrayAdapter<SomeObject>(this, R.id.my_textview, myArray);

Пока реализован SomeObject.toString(), тогда TextView, представленный идентификатором ресурса R.id.my_textview, будет привязан к его возвращаемому значению.

0 голосов
/ 11 февраля 2012

T [] означает универсальный тип. Вот документация по generics .

...