如果我使用list.add(int, int)
方法,如果位置大於或等於list.size()
,它將拋出IndexOutBoundException
。動態增加列表大小java
我想通過添加空元素(如果有必要)來增加大小,直到它可以安全地添加一個真實元素爲止。
所以可以說我有一個list(list.size()= 0)
,我想5添加到第三的位置,那麼我會得到的,其中size
等於4
列表,元素是null
,null
,null
,5
。
如果我使用list.add(int, int)
方法,如果位置大於或等於list.size()
,它將拋出IndexOutBoundException
。動態增加列表大小java
我想通過添加空元素(如果有必要)來增加大小,直到它可以安全地添加一個真實元素爲止。
所以可以說我有一個list(list.size()= 0)
,我想5添加到第三的位置,那麼我會得到的,其中size
等於4
列表,元素是null
,null
,null
,5
。
嘗試使用的ArrayList
沒辦法。這是完全不同的 –
'ensureCapacity(int)'不會更改列表的實際大小,它只是爲列表在下一個需要複製值之前可以達到的特定大小分配內存。它只是節省增量重新分配。而且,它是一個'ArrayList'方法,不適用於'java.util.List'的任何其他實現。 –
我的不好:(。與方法描述混淆了:_如果有必要,增加此ArrayList實例的容量,以確保它至少可容納由最小容量參數指定的元素數量 – Zeeshan
You can do this by adding null elements in the List like:
import java util.List;
import java.util.ArrayList;
public class Hello {
public static void main(String args[]){
List<Integer> list = new ArrayList<Integer>();
list.add(0, null);
list.add(1, null);
list.add(2, null);
list.add(3, 5);
System.out.println(list);
}
}
Now, you will an output [null, null, null, 5]. I think this might serve your purpose.
Or you can use this way:
List list = Collections.nCopies(5,null);
ArrayList<Integer> aList = new ArrayList<Integer>(list);
aList.add(5,5);
System.out.println(aList);
You will get an output as : [null, null, null, null, null, 5]
If this could serve your prupose.
ensureCapacity(int minCapacity)
方法是什麼ü意味着'afely添加真元的end'? –只是出於好奇..你爲什麼想這樣做? – TheLostMind
問題沒有意義,除非你告訴我們你的'list'實際上是什麼。 –