Map类型的的增删查、判断、循环输出

打印 上一主题 下一主题

主题 877|帖子 877|积分 2631

特点:
双链集合,一次存储一对数据,分为键和值,键唯一,值可多个,键值对应
 
首先新建集合
  1. Map<String, String> map = new HashMap<>();
复制代码
添加元素
注意该类型集合添加元素并不使用“add”而是使用“put”
  1.         map.put("陈平安","宁姚");
  2.         map.put("刘羡阳","赊月");
  3.         map.put("顾璨","春宵");
  4.         map.put("刘灞桥","苏嫁");        
复制代码
删除指定的元素
通用“remove”,如果想要看到本身删除的内容,可以
  1. String delet = map.remove("刘灞桥"); //只输入键,不输入值<br>System.out.println(delet);  //输出删除值<br>map.remove("顾璨");
复制代码
当然如果想重新开始就
  1. //清空
  2. map.clear();
复制代码
判断集合内是否存在该类元素的话
  1. //判断
  2.         boolean keyreturn = map.containsKey("刘灞桥");  //根据键判断
  3.         boolean keyreturn1 = map.containsKey("曹慈");
  4.         boolean valuereturn = map.containsValue("苏嫁");  //根据值来判断
  5.         boolean valuereturn1 = map.containsValue("裴钱");
  6.         System.out.println(keyreturn);  //真
  7.         System.out.println(keyreturn1);  //假
  8.         System.out.println(valuereturn);
  9.         System.out.println(valuereturn1);
复制代码
  1. [/code]如果想要知道集合是否存在元素,则使用布尔类型的数据来接收结果
  2. [code]//判断集合是否为空
  3.         boolean empty = map.isEmpty(); //当没有清空集合元素时为假反之为真
  4.         System.out.println(empty);
复制代码
循环
方法一:
当只想循环两个数据中的其中一个时
  1. Set<String> keys = map.keySet(); //只关于键
  2.         for (String key : keys) {
  3.             System.out.println(key);
  4.         }
  5. Collection<String> values = map.values();  //只关于值
  6.         for (String s : values) {
  7.             System.out.println(s);
  8.         }
复制代码
都是建立接口,赋值来循环,都使用”增强fo“r的形式,如果想两个一起循环的话
  1. Set<String> keys = map.keySet();  //获取键
  2.         for (String key : keys) {
  3.             String value = map.get(key);  //获取键所对应的值
  4.             System.out.println(key+"="+value);  //正常输出
  5.         }
复制代码
方法二:
  1. Set<Map.Entry<String, String>> entries = map.entrySet();
  2.         //如果选择导包,在最开始的地方输入:import java.util.Map.Entry;则在上面的第一个书名号内可以不用"Map."
  3.         for (Map.Entry<String, String> en : entries) {
  4.             String key = en.getKey();  //获取键
  5.             String val = en.getValue();  //获取值
  6.             System.out.println(key+"+"+val);  //同样输出全部
  7.         }
复制代码
方法三:
  1. map.forEach(new BiConsumer<String, String>() {  //在括号内new一个"BiC"选开头第一个
  2.             @Override
  3.             public void accept(String key, String value) {  //参数根据需要看改不改
  4.                 System.out.println(key+" = "+value);
  5.             }
  6.         });
  7.         System.out.println("\n"+"=============================="+"\n");
  8.         //写法二:lamba写法
  9.         map.forEach((key, value)-> System.out.println(key+" = "+value));
复制代码
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

万有斥力

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表