默認情況下,當我們創建一個arrayList而不指定其大小時,它會在內存中創建一個包含10個元素的數組,但我的問題是,如果我們創建了一個像 List lst = new ArrayList();非定製Arraylist定義多少空間
lst在內存中將保留多少字節?
默認情況下,當我們創建一個arrayList而不指定其大小時,它會在內存中創建一個包含10個元素的數組,但我的問題是,如果我們創建了一個像 List lst = new ArrayList();非定製Arraylist定義多少空間
lst在內存中將保留多少字節?
ArrayList的默認容量與泛型沒有任何關係。
如果不指定容量,則默認容量爲10.將創建一個由10個元素組成的Object數組,其中包含空值。對象數組只是對象引用的數組。
對象引用的內存開銷取決於程序運行的平臺(通常在64位操作系統上是8個字節,在32位操作系統上是4個字節)。
Java泛型被刪除(未通知)。實例構造爲
new ArrayList()
new ArrayList<Object>()
new ArrayList<Integer>()
是在運行時相同。