黑马程序员技术交流社区

标题: TreeMap,HashMap,HashSet三者之间的区别?怎么选择他们来解决问... [打印本页]

作者: 双元黑马12    时间: 2015-9-16 23:56
标题: TreeMap,HashMap,HashSet三者之间的区别?怎么选择他们来解决问...
如题,有时真不知道选着哪一个来建立集合!!!
作者: 双元黑马12    时间: 2015-9-16 23:57
顶顶顶顶顶顶顶!!!!
作者: xiaote0225    时间: 2015-9-17 00:27
Map

            |-----HashTable

            |-----HashMap

            |-----TreeMap

     HashTable:在java 1.0版本就出现了这个HashTable,采用的是键值对的方式存储的,数据结构是哈希表,线程是同步的,相比效率低,不允许存储null  Key和Null Value

    HashMap:在java1.2版本就出现了这个HashMap,采用的也是键值对的方式存储的,数据结构是哈希表,线程是不同步的,相比效率高,允许存储null Key 和null Value

   TreeMap:采用的也是键值对的方式存储的,数据结构是二叉树,线程是不同步的,按照键来进行排序的。
作者: 芝麻糊    时间: 2015-9-17 08:34
个人总结 。
1.  打死也不要用HashTable 效率低 涉及多线程自己加锁
2.  涉及排序的键值对存储用 TreeMap
3.  不涉及排序用 HashMap
作者: meihua    时间: 2015-9-17 08:58
有映射关系用map(hashmap\Treemap),TreeMap有排序。
要排序用Tree
用集合存贮类的时候,类一般都要覆写hashCode(),equals(),compareTo()方法;

作者: Anmyre    时间: 2015-9-17 09:19
学习了学习了
作者: 张寰宇    时间: 2015-9-17 11:39
多谢分享学习了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2