Array
- 連續性的記憶體空間
- 快速定位查找元素,隨機訪問性強,查找效率高
- 已知的統一的元素型別,減小運行時開銷
- 固定長度,不能再新增元素
ArrayList
- 連續性的記憶體空間
- 快速定位查找元素,隨機訪問性強,查找效率高
- 可變長度,便于對元素進行增刪操作
- 未知的元素型別,Runtime需要型別檢測,Runtime需裝箱拆箱動作,為此產生性能開銷
- 可對元素進行增刪改操作,需要重新調整后續元素的位置,為此產生性能開銷
List<T>
- 連續性的記憶體空間
- 快速定位查找元素,隨機訪問性強,查找效率高
- 可變長度,便于對元素進行增刪操作
- 泛型,統一的已知型別,避免運行時型別檢測,避免運行時裝箱拆箱,減少運行時性能開銷
- 可對元素進行增刪改操作,需要重新調整后續元素的位置,為此產生性能開銷
LinkedList<T>
- 可變長度,便于對節點(元素)進行增刪操作
- 泛型,統一的已知型別,避免運行時型別檢測,避免運行時裝箱拆箱,減少運行時性能開銷
- 無序的、分散存盤,靠節點(元素)中的指標指向關聯下一節點(元素),增刪速度相對快,不影響后續節點(元素)位置調整
- 查找效率低,不能隨機查找,不支持回圈,僅可從首(末)節點(元素) 透過指標指向逐次查找下個節點(元素)
Stack
- 堆疊:先進后出,小型的、連續性的、存盤變數及引數的記憶體空間,讀取速度快
- 堆:無序的,存盤資料物件的記憶體區域,讀取速度相對慢,可手動釋放的區域
Queue
- 線性的,有序的,先進先出
- 隊尾插入,隊頭洗掉
- 順序佇列,預期長度;鏈式佇列,可變長度
Dictionary<K,T>
- 哈希存盤結構,鍵值對訪問,通過索引快速查找
- 不重復的鍵值,唯一性
- 可回圈的資料集
- 泛型,避免運行時型別檢測,避免運行時裝箱拆箱
- 散列存盤,不固定長度,添加洗掉時,無需元素位置的調整
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/285339.html
標籤:C#
