集合类用的最多了,但是总觉得不够清晰
这两天总算有点空
重新翻了一遍java6的toturial
结合API看了一遍Collection。
终于再次对java collection framework 有了一个完整的认识
Java Collection Framework 主要由3部分组成
1.Interface
比如collection,list,map等接口
2.Implementation
比如HashSet, TreeMap等类
3.Algorithm
主要是java.util.Collections这个类里的一些静态方法
Interface 方面
主要由两支:
Implementation方面
根据实现的接口:
Set:
-HashSet:后台由hashTable支持,不保证遍历顺序,效率最高
-TreeSet:实现SortedSet接口,后台是红黑树,自动按置排序。
-LinkedHashSet:保持插入时的顺序,效率最低。
List:
-ArrayList:效率最高
-LinkedList:线性效率高。
Map:
-HashMap
-TreeMap
-LinkedHashMap
还有些需要研究的问题:
syncronize;Map接口和Collection接口如何实现转换等。。。
这两天总算有点空
重新翻了一遍java6的toturial
结合API看了一遍Collection。
终于再次对java collection framework 有了一个完整的认识
Java Collection Framework 主要由3部分组成
1.Interface
比如collection,list,map等接口
2.Implementation
比如HashSet, TreeMap等类
3.Algorithm
主要是java.util.Collections这个类里的一些静态方法
Interface 方面
主要由两支:
1.Collection
-Set:值唯一
-SortedSet
-List:可重复
-Queue
2.Map
-SortedMap:键值对
Implementation方面
根据实现的接口:
Set:
-HashSet:后台由hashTable支持,不保证遍历顺序,效率最高
-TreeSet:实现SortedSet接口,后台是红黑树,自动按置排序。
-LinkedHashSet:保持插入时的顺序,效率最低。
List:
-ArrayList:效率最高
-LinkedList:线性效率高。
Map:
-HashMap
-TreeMap
-LinkedHashMap
还有些需要研究的问题:
syncronize;Map接口和Collection接口如何实现转换等。。。