2012-06-12 74 views

回答

14

陣列大小需要被固定,而初始化,使用toArray()

例如使用List代替,然後有陣列從List

List<Integer> listOfInt = new ArrayList<Integer>(); //no fixed size mentioned 
listOfInt .add(1); 
listOfInt .add(2); 
listOfInt .add(3); 
//now convert it to array 
Integer[] arrayOfInt = list.toArray(new Integer[listOfInt .size()]); 
+3

+1沒什麼可說的.. – MByD

+0

也許建議''ArrayList'特別是,因爲它實際上在引擎蓋下使用一個數組? – Tudor

+0

是的,您可以使用'ArrayList'實現@Tudor在評論中提到 –

1

您的標題是混亂的。你正在使用一個ArrayList或一個數組。
每次您分別撥打addremove方法(或任何其他添加/刪除變體)時,ArrayList會根據需要展開和縮小。沒有必要自己管理它的大小。

名單初始化如下:

List<Integer> lst = new ArrayList<Integer>(); 

現在你有一個列表,你可以添加元素的虛擬無限量。

array在初始化時需要它的大小,在不重新初始化的情況下無法更改。

+0

+1幾乎可以肯定的OP是試圖問'ArrayList',但它很混亂。 –