首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

理解 ArrayList 「維護」一個 Object 數組的真實含義

     編輯:程式設計疑難解答

代碼實證

// ArrayList 核心字段 (JDK 17)
private transient Object[] elementData;

為什麼用「維護」?

  • 封裝性:數組 private,外部不可直接訪問,所有增刷改查由 ArrayList 方法完成。
  • 動態擴容:add() 時檢查容量,不足則 Arrays.copyOf 擴容(1.5 倍)。
  • 縮容/修剪:trimToSize() 將容量縮減至 size。
  • 快速失敗:迭代器遍歷時監測 modCount,結構變更拋 ConcurrentModificationException。

通俗類比

ArrayList 是一個「倉庫管理員」,Object[] 是「貨架」。管理員負責:

  1. 貨架不夠了 → 換更大貨架(擴容)。
  2. 貨架太空 → 換小貨架(縮容)。
  3. 存取貨物 → 記錄位置、檢查越界、防止亂拿(索引檢查、迭代器快速失敗)。

這一系列「照看、調度、保護」動作,就是 maintenance(維護) 的準確語義——不僅是「有一個數組」,而是「全生命週期管理這個數組」。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved