[数据结构] - ArrayList探究
生活随笔
收集整理的這篇文章主要介紹了
[数据结构] - ArrayList探究
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一 概述
ArrayList可以理解為動態數組,與java的數組相比,它的容量能動態曾長,ArrayList是List接口的可變數組的實現,允許包括null值在內的所有元素。除了實現List接口外,此類還提供一些方法來操作內部用來存儲列表的數組的大小(此類大致上等同于Vector類,除了此類是不同步的)
每個ArrayList實例都有一個容量,該容量是指用來存儲列表元素的數組的大小。隨著向ArrayList中不斷添加元素,其容量也自動增長。自動增長會帶來數據向新數組的重新拷貝。因此,如果可預知數據量的多少,可在構造ArrayList時制定其容量。在添加大量元素之前,應用程序也可以使用ensureCapacity操作來增加ArrayList實例的容量,這可以減少遞增式再分配的數量。
注意,此實現不是同步的,如果多個線程同時訪問一個ArrayList實例,而其中至少一個線程從結構上修改了列表,那么它必須保持外部同步。注意,結構上的修改是指任何添加或刪除一個或多個元素的操作,或者顯式調整底層數組的大小。僅僅設置元素的值不是結構上的修改。
?
二 實現
ArrayList的默認容量時10,每次擴充1.5倍
未完待續。。
轉載于:https://www.cnblogs.com/balfish/p/8862752.html
總結
以上是生活随笔為你收集整理的[数据结构] - ArrayList探究的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python基础之常用的高阶函数
- 下一篇: 软工五:四则运算