2012-07-16 125 views
-1
public void onItemClick(AdapterView<?> parent, View v, int pos, long id) 

<?>在上面的代碼是什麼?<?> Android中的含義是什麼?

+2

@ 0gravity:當全新的用戶發佈問題,這是毫無意義的,它往往是一個好主意打到[編輯]按鈕,然後找出他們_wrote_什麼 - 在這種情況下,至少,pronay忘了使用正確的代碼格式,所以他的''被解釋爲HTML並被剝離 - 使得問題看起來很愚蠢。謝天謝地,這是一個簡單的修復。 :) – sarnold 2012-07-16 23:16:15

+2

你想要搜索的是「Java通配符」。看看[這個](http://tutorials.jenkov.com/java-generics/wildcards.html)例子,讓你開始。 – 0gravity 2012-07-16 23:27:56

+0

可能重複[什麼是java.lang.Class \ [\]](http://stackoverflow.com/questions/11465277/what-is-java-lang-class) – davidcesarino 2012-07-16 23:40:34

回答

0

AdapterView<?>parent

<?>是一個通配符。

Reference這個特殊功能的文檔。

0

在Java泛型的概念中,它表示您使用通配符。

所以這意味着任何AdapterView類型都可以在該簽名中使用。

+0

簽名是什麼樣子? ArrayListAdapter適配器可以傳入?或AdapterView 適配器可能對讀者不清楚。 – 2012-07-17 00:01:25

1
Array<Int> arrayOfInts; 
    Array<String> arrayOfStrings; 
    Array<?>  arrayOfAnything; // 

    Object o = arrayOfAnyting[0]; 
    if (arrayOfAnything[0] instanceof String){ 
    String s =(String) arrayOfAnything[0]; 

    } 

String s2 = arrayOfStrings[0];