arraylist有乙個有參構造方法
public arraylist(int也就是我們例項化arraylist時可以這樣寫:initialcapacity)
else
if (initialcapacity == 0)
else
}
arraylistlist = new arraylist(30);我第一反應是list的初始長度為30,因此我寫了這樣一條**:
list.set(0,"first");結果卻報了這麼乙個異常
於是我呼叫size()方法,返回的結果是:
size = 0也就是說,該構造方法並不是將arraylist()初始化為指定長度,而是指定了其內部的object陣列的長度,也就是其容量。因此,當我們呼叫size()時,返回的是其實際長度,而非容量大小,同時,對超出arraylist長度的部分進行訪問或賦值操作時也會造成訪問越界,儘管它的容量大小足夠
關於ArrayList 容量問題
arraylist 是實現list 介面的動態陣列,即它的容量大小是可變的。允許包括null 在內的所欲元素。每個arraylist 例項都有乙個容量,該容量是指用來儲存列表元素的陣列的大小。預設初始容量為10.隨著arraylist 中元素的增加,它的容量會不端的自動增長。在每次新增新的元素時,a...
Java中的ArrayList的容量
list介面的大小可變陣列的實現。實現了所有可選列表操作,並允許包括 null 在內的所有元素。arraylist繼承於list介面,除繼承過來的方法外,還提供一些方法來操作內部用來儲存列表的陣列的大小。每個arraylist例項都有乙個容量。該容量是指用來儲存列表元素的陣列的大小。它總是至少等於列...
Java中的ArrayList的容量
list介面的大小可變陣列的實現。實現了所有可選列表操作,並允許包括 null 在內的所有元素。arraylist繼承於list介面,除繼承過來的方法外,還提供一些方法來操作內部用來儲存列表的陣列的大小。每個arraylist例項都有乙個容量。該容量是指用來儲存列表元素的陣列的大小。它總是至少等於列...