Java中陣列長度和ArrayList大小的區別
在集合中,一個主要的函式需求是獲取儲存在集合中的元素數量,以便確定是否需要新增更多元素。此外,元素數量也需要用於集合的迭代。
眾所周知,陣列和ArrayList都用於儲存元素,但兩者都有不同的方法來確定儲存在其中的元素數量。
陣列具有length方法,該方法提供可儲存的元素數量,或者簡單來說就是陣列的容量。length方法還定義了在陣列初始化期間分配的總空間。在初始化期間,我們定義的陣列長度與建立的陣列型別塊的數量相同,JVM使用預設值初始化每個塊。
另一方面,ArrayList沒有length方法,但它有一個名為size的方法來計算儲存在其中的元素數量。眾所周知,ArrayList會隨著向其中新增元素而動態增長。如果當前元素的大小(包括要新增到ArrayList的新元素)大於陣列的最大大小,則會建立一個相同大小的新陣列,並將舊陣列複製到新陣列中。
廣告