List、Set、Map 各有多種實作,差異在於底層數據結構。選擇時應以「預設首選」為起點,效能瓶頸時再優化。
| 操作 | ArrayList | LinkedList |
|---|---|---|
| 隨機訪問 (get) | 極快 | 慢 (O(n)) |
| 迭代遍歷 | 快 | 較慢 |
| 中間插入/刪除 | 慢 (需移動元素) | 極快 (O(1)) |
建議:預設用 ArrayList;大量中間插刪時改用 LinkedList。
| 操作 | HashMap | TreeMap | Hashtable |
|---|---|---|---|
| put/get | 極快 (O(1)) | O(log n) | 快 (同步開銷) |
| 迭代順序 | 無序 | 鍵有序 | 無序 |
| 創建速度 | 中 | 最快 | 較慢 |
決策樹:
文中提供 ListPerformance、SetPerformance、MapPerformance、MapCreation 基準測試範本,可自行在目標環境驗證。