2022-12-09
集合 arraylist 元素 數組
ArrayList集合介紹
ArrayList是List接口的一個實現類,它是程序中最常見的一種集合。在ArrayList內部封裝了一個長度可變的數組對象,當存入的元素超過數組長度時,ArrayList會在內存中分配一個更大的數組來存儲這些元素,因此可以將ArrayList集合看作一個長度可變的數組。
ArrayList集合中大部分方法都是從父類Collection和List繼承過來的,其中add()方法和get()方法分別用于實現元素的存入和取出。接下來通過一個案例學習ArrayList集合的元素存取。
|
從運行結果可以看出,索引位置為1的元素是集合中的第二個元素,這就說明集合和數組一樣,索引的取值范圍是從0開始的,最后一個索引是size-1.在訪問元素時一定要注意索引不可超出此范圍,否則會拋出角標越界異常IndexOutOfBoundsException。
由于ArrayList集合的底層是使用一個數組來保存元素,在增加或刪除指定位置的元素時,會導致創建新的數組,效率比較低,因此不適合做大量的增刪操作。因為這種數組的結構允許程序通過索引的方式來訪問元素,所以使用ArrayList集合查找元素很便捷。
泛型安全機制問題
在IntelliJ IDEA中編譯上述程序時,會得到警告信息,提示在使用ArrayList集合時并沒有明確指定集合中存儲什么類型的元素,會產生安全隱患,這涉及到泛型安全機制的問題。警告信息如下所示。
|
在編寫程序時,不要忘記使用“import java.util.ArrayList;”語句導包,否則IDEA會提示類型不能解決的錯誤信息,將鼠標移動到報出錯誤的ArrayList()上,錯誤顯示如下所示:
|
要解決此問題,只需單擊圖中錯誤顯示小窗口中Import class的鏈接,這樣IntelliJ IDEA就會自動導入ArrayList的包。在后面的案例中會大量地用到集合類,為了方便,程序中可以使用import java.util.*;來進行導包,其中*為通配符,整個語句的意思是將java.util包中的內容都導入進來。
開班時間:2021-04-12(深圳)
開班盛況開班時間:2021-05-17(北京)
開班盛況開班時間:2021-03-22(杭州)
開班盛況開班時間:2021-04-26(北京)
開班盛況開班時間:2021-05-10(北京)
開班盛況開班時間:2021-02-22(北京)
開班盛況開班時間:2021-07-12(北京)
預約報名開班時間:2020-09-21(上海)
開班盛況開班時間:2021-07-12(北京)
預約報名開班時間:2019-07-22(北京)
開班盛況Copyright 2011-2023 北京千鋒互聯科技有限公司 .All Right 京ICP備12003911號-5 京公網安備 11010802035720號