Map集合

Map集合与Collection接口都是并列的,都是顶层接口;
map:集合一次存放一对元素;Collection集合一次存放一个元素;
map集合也称为双列集合;Collection集合称为单列集合;其实map集合中存储的就是键值对map<k,v>;
注意: map集合中必须保持键的唯一性
常用方法:1、添加: put(k,v):返回前一个和key关联的值(即假如覆盖的话返回要覆盖的那个value值),如果没有则返回null;
2、删除:clear():清空map集合;remove(key):根据指定的key删除这个键值对,同时返回该键所对应的值!
3、判断:containKey(key)、containValue(Value)、isEmpty()
4、获取:get(key):通过指定的键获取所对应的值,如果没有该键则返回null;当然也可以通过返回值,来判断是否包含此键; size():获取键值对的个数; Values():获取map集合中的所有的Value值,返回一个Collection<>;

注意: map中没有迭代器,因此要想取出map集合中的所有键值对必须利用别的方法
方法一:通过keySet方法获得map集合中所有键的集合,在通过Set的迭代器,获得Set中每一个键所对应的值即可;
方法二:通过entrySet方法将map集合中所有键和值的映射关系存储到Set()集合中,而这个映射关系的类型就是Map.Entry<key,value> 类型,然后在通过迭代器获取Map.Entry<key,value>,然后在从Map.Entry中分别获取key和Value值;


Map下常用的子类:1、Hashtable;内部结构是哈希表,同步的;(null不能做键或值);旗下还有一个子类properties:此类一般是用存储键值对型的配置文件,和IO技术结合效果明显;
2、HashMap:内部是哈希表,不同步的(null允许做键和值);存储的时候如果键是数字,会进行自我排序(从小到大)
3、TreeMap:内部结构式二叉树,不是同步的,可以对map集合中的键进行排序
4、LinkedHashMap:与HashMap差别不大,唯一区别就是存储当键是数字的时候,也不会进行排序,可以进行有序(即存与取的顺序一致)
Hash表结构存储自定义对象的时候要注意都要重写HashCode()和equals()方法;
二叉树结构存储自定义对象的时候都要实现比较方法Compareable接口或者是Comparator接口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值