黑马程序员技术交流社区

标题: Map(双列集合) [打印本页]

作者: 桑葚之甜    时间: 2015-10-2 08:26
标题: Map(双列集合)
    |--Map(双列 底层结构是针对键有效,跟值无关)
               |--HashMap
                    底层数据结构是哈希表。
                    线程不安全,效率高。允许null键和值

                    怎么保证唯一性的呢?
                    它依赖两个方法:hashCode()和equals()
                    顺序:
                         首先判断hashCode()值是否相同。
                         同:继续走equals(),看返回值
                              如果true:就不添加到集合。
                              如果false:就添加到集合。
                         不同:就添加到集合。
               |--Hashtable
                    底层数据结构是哈希表。
                    线程安全,效率低。不允许null键和值

                    怎么保证唯一性的呢?
                    它依赖两个方法:hashCode()和equals()
                    顺序:
                         首先判断hashCode()值是否相同。
                         同:继续走equals(),看返回值
                              如果true:就不添加到集合。
                              如果false:就添加到集合。
                         不同:就添加到集合。
               |--TreeMap
                    底层数据结构是二叉树。
                    线程不安全,效率高。

                    怎么保证唯一性的呢?是根据返回是否是0。
                    怎么保证排序的呢?两种方式
                         自然排序(元素具备比较性)
                              实现Comparable接口
                         比较器排序(集合具备比较性)
                              实现Comparator接口
作者: zhaopengfei    时间: 2015-10-2 08:26
1、XXX来签到啦!
2、你在哪个城市?
3、天气如何?
4、"不认真签到,小心进不了黑马哦!"你认同吗?




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