HashMap、 TreeMap、 Hashtable:
1、 HashMap也用到了哈希码的算法,以便快速查找一个键, TreeMap则是对键按序存放,因此它有一些扩展的方法,比如 firstKey(),lastKey()等。
2、 Hashtable:不允许空( null)键( key)或值( value), Hashtable的方法是 Synchronize的,在多个线程访问 Hashtable时,不需要自己为它的方法实现同步,而 HashMap 就必须为之提供外同步。 Hashtable和 HashMap采用的 hash/rehash算法都大概一样,所以性能不会有很大的差异。
3、 HashMap和 Hashtable的区别: HashMap是 Hashtable(线程案例的 )的轻量级实现(非线程安全的实现),他们都完成了 Map接口。主要区别在于 HashMap 允许空( null )键 ( key )或值( value ) , 非同步,由于非线程安全,效率上可能高于 Hashtable。
Map总结:
是一种把键对象和值对象进行关联的容器, Map有两种比较常用的实现: HashTable、 HashMap和 TreeMap。
[url]http://moon-yang85-gmail-com.iteye.com/blog/1163762[/url]
1、 HashMap也用到了哈希码的算法,以便快速查找一个键, TreeMap则是对键按序存放,因此它有一些扩展的方法,比如 firstKey(),lastKey()等。
2、 Hashtable:不允许空( null)键( key)或值( value), Hashtable的方法是 Synchronize的,在多个线程访问 Hashtable时,不需要自己为它的方法实现同步,而 HashMap 就必须为之提供外同步。 Hashtable和 HashMap采用的 hash/rehash算法都大概一样,所以性能不会有很大的差异。
3、 HashMap和 Hashtable的区别: HashMap是 Hashtable(线程案例的 )的轻量级实现(非线程安全的实现),他们都完成了 Map接口。主要区别在于 HashMap 允许空( null )键 ( key )或值( value ) , 非同步,由于非线程安全,效率上可能高于 Hashtable。
Map总结:
是一种把键对象和值对象进行关联的容器, Map有两种比较常用的实现: HashTable、 HashMap和 TreeMap。
[url]http://moon-yang85-gmail-com.iteye.com/blog/1163762[/url]