StringBuffer VS StringBuilder
算法基本一樣, 都是采用變長算法維護的char[], 以及對這個數(shù)組內(nèi)容進行"增刪改查"操作組成
StringBuilder java 5 以后提供,性能好,非線程安全(不檢查鎖)StringBuffer 早期Java 提供, 性能稍差, 線程安全(檢查鎖)
線性表
散列表
3 線性表: List, 表示有先后次序的對象集合, 歌曲列表
1 什么是線性表: 有先后次序的對象集合
2 java 的線性表實現(xiàn)原理
3 線性表的使用
ArrayList = Object[] + 線性表操作(增刪改查)
StringBuilder = char[] + 操作(增刪改查)
ArrayList(1.2以后新的) 是使用變長數(shù)組算法實現(xiàn)的 List (線性表方法)
Vector(1.0) 是使用變長數(shù)組算法實現(xiàn)是 List 矢量 向量
LinkedList 是采用雙向循環(huán)鏈表實現(xiàn)的List 接口中定義的方法
ArrayList 是利用變長數(shù)組算法實現(xiàn)的 List接口定義的方法
它們都是List, 使用感受差不多
LinkedList 在頭尾插入/修改速度很快, 讀取比較慢
ArrayList 本質(zhì)是數(shù)組, 讀取修改很快, 刪除較慢
一般使用ArrayList多些
List 集合的實現(xiàn)
1 LinkedList 采用雙向循環(huán)鏈表實現(xiàn)
2 ArrayList 變長數(shù)組算法實現(xiàn) 新的 快 非線程安全
3 Vector 變長數(shù)組算法實現(xiàn) 早期提供 慢 線程安全
編輯推薦:
(責任編輯:fky)