Map集合

Map的特点

  • 存储两个对象。分别是:键(Key)和值(Value)
  • 存储的键必须是唯一的。(键不能重复,值没有要求)
  • 一个键只能对应一个值。
  • 允许存储null元素,但是键最多只能有一个null
  • 没角标、不能直接迭代遍历(不支持循环遍历)
  • Map中的键与值采用一一对应的关系,存储的是两个元素的集合,也被称为双列集合

map类常用的方法

put:将一组键值对放入map中,如果出现相同的键,后出现的值会覆盖前面的值,空返回值类型
containsKey:判断是否包含给定的key值,boolean返回值类型
containsValue:判断是否包含给定的value值,boolean返回值类型
remove:根据value删除对应的键值对
get:通过key值找到对应的value值;
keySet:用来获取map集合中的所有key值,返回一个set对象

  • 这个方法常用来遍历map时使用,获取了所有的key值,就可以通过get方法获取对应的value值。
    案例:
public static void main(String[] args) {
		Map map = new HashMap();
		map.put("aaa","AAA");
		map.put("bbb","BBB");
		map.put("ccc","CCC");
		Set set = map.keySet();
		Iterator it = set.iterator();
		while(it.hasNext()) {
			Object key = it.next();
			System.out.println(key+"---"+map.get(key));
		}
	}

执行结果:

aaa---AAA
ccc---CCC
bbb---BBB

entrySet:返回一个包含所有键值对映射关系的set集合,将map集合保存在set中
案例:

public static void main(String[] args) { 
// 创建Map集合对象 
	HashMap<String, String> map = new HashMap<String,String>(); 
	// 添加元素到集合 map.put("胡歌", "霍建华");
	map.put("郭德纲", "于谦"); 
	map.put("薛之谦", "大张伟"); 
	// 获取 所有的 entry对象 
	Set<Entry<String,String>> entrySet = map.entrySet(); 
	// 遍历得到每一个entry对象 
	for (Entry<String, String> entry : entrySet) { 
	// 解析 
	String key = entry.getKey(); 
	String value = entry.getValue(); 
	System.out.println(key+"的CP是:"+value); 
	} 
}

values:获取Map中所有的value元素

HashMap

实现了Map接口,底层结构基于哈希表,允许null值和null键,不保证映射的顺序,并且不保证该顺序恒久不变。
要想实现HashMap,需要先再实体类中重写 hashcode和equals方法
HashMap的常用方法大部分在Map中实现了,其他方法可以在API中查看

TreeMap

实现了Map方法,存储的键值对映射关系会根据key元素自动排序,排序分为两种,自然排序和比较器排序

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值