集合7——Map

双列集合:
-------| Map如果是实现了Map集合类,具备的特点:存储的数据都是以键值对的形式存在的,键不可重复,值可重复
---------| HashMap 底层基于哈希表实现
---------| TreeMap 基于红黑树数据结构实现的,会对元素的键进行排序存储
---------| HashTable 底层依赖了哈希表实现的,实现方式与HashMap一致,但HashTable是线程安全的,操作效率低

Map的方法:
一,添加:
1.put(K key,V value)

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  System.out.println(map);

在这里插入图片描述
2.putAll(Map <?extends K ,? extends V > m)

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  System.out.println(map);
  Map<String,String> map2=new HashMap<String,String>();
  map2.put("一一", "二二");
  map2.put("三三", "四四");
  map.putAll(map2);//把map2的元素添加到map中
  System.out.println(map);

在这里插入图片描述
二、获取:
1.get(Object key):根据指定的键获取对应的值

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  System.out.println(map.get("紫薇"));

在这里插入图片描述
2.size():获取map集合键值对个数

 Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  System.out.println(map.size());

在这里插入图片描述
三、判断
1.containsKey(Object key):判断集合是否包含指定的键

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  System.out.println(map.containsKey("汪峰"));

在这里插入图片描述
2.containsValue(Object value):判断结合是否包含对应的值

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  System.out.println(map.containsValue("章子怡"));

在这里插入图片描述
3.isEmpty():判断集合是否为空

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  System.out.println(map.isEmpty());

在这里插入图片描述
四,删除:
1.remove(Object key):根据键删除一条数据,返回该键的值

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  System.out.println(map.remove("紫薇"));

在这里插入图片描述
2.clear():清空集合中的所有数据

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  map.clear();
  System.out.println(map);

在这里插入图片描述
五、迭代:
1.keySet()

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  //map集合遍历方式一:keySet()
  Set<String> keys=map.keySet();//把map集合中所有的键都保存到一个set类型的集合对象中返回
  System.out.println(keys);

缺点:只有键没有值
在这里插入图片描述
2.values()

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  //map集合遍历方式二:values()
  Collection<String> c=map.values();//把集合中的所有值都存储到一个collection集合中
  Iterator<String> it=c.iterator();
  while(it.hasNext()){
   System.out.println("值:"+it.next());
  }

缺点:只有值没有键
在这里插入图片描述
3.entrySet()

Map<String,String> map=new HashMap<String,String>();
  map.put("汪峰","章子怡");
  map.put("谢霆锋", "王菲");
  map.put("紫薇", "尔康");
  //map集合遍历方式三:entryset()
  Set<Entry<String,String>> entrys=map.entrySet();
  Iterator<Entry<String,String>> it=entrys.iterator();
  while(it.hasNext()){
   Entry<String,String> entry=it.next();
   System.out.println("键:"+entry.getKey()+" 值:"+entry.getValue());
   
  }

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值