private static <T> List<T> createListOfType(Class<T> type){
return new ArrayList<T>();
}
我明白它試圖這樣做,但爲什麼事先如何閱讀此標題?
private static <T> List<T> createListOfType(Class<T> type){
return new ArrayList<T>();
}
我明白它試圖這樣做,但爲什麼事先如何閱讀此標題?
第一<T>
不只是簡單地List<T>
感謝聲明一個泛型類型參數我不明白,這部分<T> List<T>
該方法爲T
。下一部分,List<T>
是返回類型。在沒有聲明<T>
的情況下,符號T
將無法解析。
+1對於實際回答問題:) – 2013-04-25 00:24:15
簽名的List<T>
部分指定方法的返回類型。它將返回List
與提供的類的參數化類型。
所以,如果Class<String>
作爲參數提供的方法將基本上做到以下幾點:
private static List<String> createListOfType(Class<T> type){
return new ArrayList<String>();
}
注意'type'參數是沒有意義的,可以拆卸。 – 2013-04-25 00:23:04
@PaulBellora哪個'type'參數可以被刪除?第一個''是必需的,不是嗎? –
2013-04-25 00:27:09
@MisrableVariable我的意思是參數'類型',而不是類型參數:) – 2013-04-25 00:28:10