我有一個方法,用於將數組轉換爲一個ArrayList如下:通用方法來轉換的陣列,以ArrayList的
public static <T> ArrayList<T> getArrayList(T[] a){
ArrayList<T> retList = new ArrayList<T>();
for (T i : a){
retList.add(i);
}
return retList;
}
這對於對象數組如正常工作:
String[] arr = {"String","'nother string","etc"};
ArrayList<String> stringList = initArrayList(arr);
但不與原始陣列:
int[] arr2 = {1,2,3};
ArrayList<Integer> intList = initArrayList(arr2); //Compiler is insulted by this.
我想我必須將數組轉換爲整數數組如果我想方法工作,但是有沒有辦法讓這個方法能夠處理這個問題呢?
Java教程網站有以下幾點:
static <T> void fromArrayToCollection(T[] a, Collection<T> c) {
for (T o : a) {
c.add(o); // Correct
}
}
這會工作,但我想的方法來創建的ArrayList。另外,這僅僅是爲了我自己的娛樂,所以Collection的類型並不重要,我在編寫方法時只使用了ArrayList。
感謝
不,實際上沒有。原始陣列和泛型不會混合。 – 2013-03-19 23:53:58
看看這個http://stackoverflow.com/questions/754294/convert-an-array-of-primitive-longs-into-a-list-of-longs – 2013-03-19 23:58:21