第六章 數組:批量數據存儲的基石
6.1 數組概述:為什麼需要數組?
單個變量存一值,但業務常需**批量存儲相關數據**(如一副撲克牌)。數組 = **一組數的集合**,存儲角度與變量等價,但引入**下標強制編號**,實現隨機訪問。
核心特性
- 同質性:元素類型必須相同(便於內存佈局計算)
- 固定長度:初始化指定,不可變(除非重新初始化)
- 連續內存:堆中連續分配,訪問速度極快(O(1) 隨機訪問)
- 下標訪問:
數組名[下標],下標可為變量 → **靈活遍歷**
兩大分類
- 一維數組:單層線性結構
- 多維數組:二維及以上(數組的數組)
設計哲學:泥巴造物主
數組給你一塊連續內存「泥巴」,**長度、類型、元素語義全由你設計**。這自由度正是初學者最不適應、也是最強大之處。
歷史地位
「數據存儲的一小步,確實算法實現的一大步」
下標可用變量,將「固定訪問」升級為「動態遍歷」,徹底改變算法實現方式。
三大鐵律(必須記住)
- 元素類型**必須相同**
- 長度**一旦指定不可改變**
- 訪問**必須通過 數組名+下標**
學習路線
- 一維數組語法與應用(本章重點)
- 多維數組概念與不規則數組
- 經典算法:排序、查找、矩陣運算
- 數組與集合框架的銜接
數組是所有容器類型的祖先,吃透數組,集合框架自然通透。