黑马程序员——Java集合之Map

来源:互联网 发布:雷欧mac全灭第几集 编辑:程序博客网 时间:2024/06/16 18:43

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------

Map集合存储键值对,一对一对往里存,而且要保证键的唯一性

Map集合的常用方法:添加元素put(K key, V value)并且返回的是原键值对对应的值

                                       删除元素clear()清空,remove(Object key)删除指定键值的元素

                                       判断键值是否存在containsKey()和containsValue(),判断是否为空isEmpty()

                                       获取get(),如果没有则返回null,获取长度size()

常用的Map集合有Hashtable底层数据结构是哈希表,不可存在null键值对,是同步的

                                HashMap底层数据结构是哈希表,可存在null键值对,是不同步的

                                TreeMap底层数据结构是二叉树,线程不同步,可给Map中键进行排序

Map集合的取出方式有两种,一种是keySet将Map中所有的键存入Set集合中,因为Set有迭代器,可以用迭代器的方法取出所有的键,再根据get()方法获取每个键对应的值。

 另一种方法是用keySet()方法取出集合中的映射关系,存入Set集合中,关系类型就是Map.Entry,其中自带取出Map中键和值的方法

下面的程序把这两个方法都演示了一下


其输出结果为,可见两种方式都可以取出



其实TreeMapt集合的底层就是利用的TreeSet,相当于是TreeMap的单列显示,同样TreeMap也可以通过传递比较器进行比较排序

把数组变成List集合的好处,可以用集合的思想和方法操作数组中的元素。变成集合后不能用集合的增删方法,因为数组长度是固定的,若数组中元素都是对象,那么变成集合时数组中的元素就直接变成集合中元素。若数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存储

集合变数组为了限定对元素的操作,不需进行增删了
























0 0
原创粉丝点击