集合-Map

 

Map接口:将唯一的键(键不可重复)映射到值。
HashMap
哈希表, 散列表,存放“键值对”数据,用来快速查找数据键,不重复,无序

创建对象:

 

//创建一个空的哈希映射
HashMap map = new HashMap();
//将m的所有映射添加到创建的哈希映射中
HashMap map = new HashMap(Map m);
//创建一个指定容量的哈希映射
HashMap map = new HashMap(int Capacity);
//同时初始化散列映射的容量和填充比
HashMap map = new HashMap(int Capacity,float fillRatio);

 

方法
put(Object key, Object value)
  放入键值对数据,如果键已存在则修改键的值
putAll(Map m)   将指定映射的所有映射关系复制到此映射
get(Object key)   返回键对应的值
remove(Object key)  移除指定的键和它的值
containsKey(Object key)  是否包含指定的键
containsValue(Object value)  是否包含指定的值
size()  有多少对数据
clear()  清空
isEmpty()  判断映射是否为空
keySet()  获得一个 Set 类型集合,包含所有的键
entrySet()  获得一个 Set 类型集合,包含所有 Entry
values()  获得集合,包含所有的值

TreaMap
红黑树,用来快速查找数据键,不重复,有序(按关键字升序排序)
键比较大小
      键实现 Comparable 接口
      TreeMap 外接比较器对象 Comparator
创建对象

 

//1.创建一个空的映射树 
TreeMap map = new TreeMap();
//2.初始化树映射,使用关键字按自然排序
TreeMap map = new TreeMap(Map m);   
//3.构建一个映射树,并且使用特定的比较器关键字进行排序
TreeMap map = new TreeMap(Comparator cp); 

方法
put(Object key, Object value)
   放入键值对数据
get(Object key)   用键获得对应的值
remove(Object key)    移除指定的键和它的值
containsKey(Object key)  是否包含指定的键
containsValue(Object value)  是否包含指定的值
size()  有多少对数据
clear()  清空
comparator()  返回用于对此映射进行排序的比较器。如果此映射使用它的键的自然顺序,则返回null
keySet() 
  获得一个 Set 类型集合,包含所有的键
entrySet()   获得一个 Set 类型结合,包含所有 Entry
values()   获得集合,包含所有的值
firstKey()  返回有序映射中当前第一个键
lastKey()  返回有序映射中当前最后一个键
headMap(Object toKey)  返回此映射的部分

HashMap与TreeMap
当用户需要对Map进行频繁的插入、删除元素时,使用HashMap。
如果只是按照自然顺序或自定义遍历,使用TreeMap。
HashMap添加的键类必须重写hashCode()和equals()方法,TreeMap的键类必须实现 Comparable接口。(如果没实现,就需要给TreeMap制定Comparator)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值