list底層原理?
1.ArrayList的底層原理是由動態數組實現的。其數組的長度是隨著元素的增多而變長的;當實例化ArrayList時(List array = new ArrayList();)它的長度是默認為10。
2.ArrayList是有順序的,當ArrayList增添元素時,他是按照順序從頭部往后添加的。
3.當新增的數據超過當前數組時,它會創建一個新的數組,其新數組的長度為當前數組的1.5倍,然后將當前數組的元素復制到新數組中,當前數組的內存被釋放。
4.數組存在的位置為在JVM的堆中,用來存儲固定大小同類型元素的。當新的元素需要存儲時,會存儲在最前面,所以每次存儲新元素時,所有的元素都會向后移動位置。同理,刪除一個元素時,數組中所有的元素都會向前移動位置,所以ArrayList對于增刪的效率很低。
5.數組里面的元素占用的內存相同并且連續排列的。在查詢時可以根據數組的下標來進行快速訪問,所以ArrayList對于查詢效率高。
上一篇Web框架如此多的配置