首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Java ArrayList 完全指南:動態數組特性、構造方法、常用 API 與遍歷方式

     編輯:Java 綜合教學

Java ArrayList 完全指南:動態數組特性、構造方法、常用 API 與遍歷方式

ArrayList 是基於動態數組實現的 List,繼承 AbstractList,查詢快(O(1))、尾部插入攤還 O(1)、中間插刪 O(n)。

構造方法

  • ArrayList():默認初始容量 10(JDK 8+ 延遲至首次 add)。
  • ArrayList(Collection<? extends E> c):包含指定集合元素。
  • ArrayList(int initialCapacity):指定初始容量,避免擴容開銷。

常用 API

方法說明
add(E e)尾部添加
add(int index, E e)指定位置插入
get(int index)獲取指定位置元素
set(int index, E e)替換指定位置元素
remove(int index)刪除指定位置元素
indexOf(Object o)首次出現索引,無則 -1
size()元素數量
clear()清空

代碼示例

List<String> list = new ArrayList<>();
list.add("zhangsan");
list.add("lisi");
list.add("wangwu");
list.add(1, "jay");      // 索引 1 插入
list.set(0, "Ali");      // 替換索引 0

// 遍歷方式 1:Iterator
Iterator<String> it = list.iterator();
while (it.hasNext()) System.out.println(it.next());

// 遍歷方式 2:增強 for
for (String s : list) System.out.println(s);

輸出結果

Ali
jay
lisi
wangwu

擴容機制

  • 容量不足時新建 1.5 倍舊容量數組(newCapacity = oldCapacity + (oldCapacity >> 1))。
  • Arrays.copyOf 複製元素,舊數組可被 GC 回收。
  • 大量添加前預估大小調用 ensureCapacity 或構造器指定容量,減少拷貝。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved