String,StringBuffer,StringBuilder區別
1. java.util.*包的UML結構圖。
2. Vector和ArrayList、LinkedList區別 Hashtable 和 HashMap之間的區別
3. String、StringBuffer,StringBuilder之間區別。
--回答--
1.
Collection
¦
¦_List
¦ ¦_LinkedList
¦ ¦_ArrayList
¦ ¦_Vector
¦
¦_Set
¦
¦_Map
¦ ¦_HashMap
¦
¦_Compare,Comparetor
¦
¦_Dictionary
¦ ¦_Hashtable
¦_ ...
2. LinkedList內部以鏈表形式存儲數據
ArrayList內部以數組形式存儲數據。
Vector同ArrayList,不過它與ArrayList比較起來是thread-safe的。
Hashtable是繼承了Dictionary,是線程安全的。HashMap實現了Map接口,不是線程安全的。
如何保證線程安全的?每個修改容器中數據的操作都是同步的(synchronized),因此保證了線程安全。
3. String是長度不可變的,StringBuffer和StringBuilder長度都是可以變化的。
StringBuffer是線程安全的,StringBuilder不是線程安全的。
2. Vector和ArrayList、LinkedList區別 Hashtable 和 HashMap之間的區別
3. String、StringBuffer,StringBuilder之間區別。
--回答--
1.
Collection
¦
¦_List
¦ ¦_LinkedList
¦ ¦_ArrayList
¦ ¦_Vector
¦
¦_Set
¦
¦_Map
¦ ¦_HashMap
¦
¦_Compare,Comparetor
¦
¦_Dictionary
¦ ¦_Hashtable
¦_ ...
2. LinkedList內部以鏈表形式存儲數據
ArrayList內部以數組形式存儲數據。
Vector同ArrayList,不過它與ArrayList比較起來是thread-safe的。
Hashtable是繼承了Dictionary,是線程安全的。HashMap實現了Map接口,不是線程安全的。
如何保證線程安全的?每個修改容器中數據的操作都是同步的(synchronized),因此保證了線程安全。
3. String是長度不可變的,StringBuffer和StringBuilder長度都是可以變化的。
StringBuffer是線程安全的,StringBuilder不是線程安全的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.