Map集合、 API、遍历方式
作者:互联网
map集合概述和使用
map集合是一种双列集合,每个元素包含亮哥数据。
map集合的每个元素的格式:key=value(键值对元素)。
map集合也被称为“键值对集合”。
map集合整体格式
{ key1=value1,key2=value2,key3=value3,... }
Map是双列集合的祖宗接口,它的功能是全部双列集合都可以继承使用的。
1 import java.util.Collection; 2 import java.util.HashMap; 3 import java.util.Map; 4 import java.util.Set; 5 6 public class mapAPI { 7 public static void main(String[] args) { 8 9 // 1. 创建一个map集合对象 10 // 一行经典代码 11 Map<String, Integer> map1 = new HashMap<>(); 12 map1.put("鸿星尔克", 1); 13 map1.put("安踏", 10); 14 map1.put("JAVA书", 20); 15 //覆盖前面的数据 16 map1.put("JAVA书", 10); 17 map1.put(null, null); 18 System.out.println(map1); 19 20 System.out.println("---------------------------------------------------------"); 21 22 // 2. 清空集合 23 // map1.clear(); 24 // System.out.println(map1); 25 26 // 3. 判断集合是否为空,为空返回true,反之 27 System.out.println(map1.isEmpty()); 28 29 // 4. 根据键获取对应值 30 Integer key = map1.get("安踏"); 31 System.out.println(key); 32 System.out.println(map1.get("李宁")); 33 34 // 5. 根据键删除整个元素 35 System.out.println(map1.remove("JAVA书")); 36 37 // 6. 判断是否包含个键,包含返回true,反之 38 System.out.println(map1.containsKey("鸿星尔克")); 39 System.out.println(map1.containsKey("李宁")); 40 41 // 7. 判断是否包含某个值 42 System.out.println(map1.containsValue(1)); 43 System.out.println(map1.containsValue(100000)); 44 45 // 8. 获取全部键的集合 46 Set<String> set1 = map1.keySet(); 47 System.out.println(set1); 48 49 System.out.println("-------------------------------------------"); 50 51 // 9. 获取全部值的集合 52 Collection<Integer> values = map1.values(); 53 System.out.println(values); 54 55 // 10. 集合的大小 56 System.out.println(map1.size()); 57 58 // 11. 合并其他map集合 59 Map<String, Integer> map2 = new HashMap<>(); 60 map2.put("安踏", 22); 61 map2.put("李宁", 10); 62 // 把map2的元素拷贝到map1中 63 map1.putAll(map2); 64 System.out.println(map1); 65 System.out.println(map2); 66 67 68 } 69 70 }
遍历Map集合
(1)键找值流程
(2)键值对
(3)Lambda
1 import java.util.HashMap; 2 import java.util.Map; 3 import java.util.Set; 4 5 public class mapTraverse { 6 public static void main(String[] args) { 7 Map<String, Integer> map1 = new HashMap<>(); 8 9 map1.put("鸿星尔克", 1); 10 map1.put("安踏", 10); 11 map1.put("JAVA书", 20); 12 //覆盖前面的数据 13 map1.put("JAVA书", 10); 14 map1.put(null, null); 15 System.out.println(map1); 16 17 // 1. 键找值,1)先拿到集合的全部键 18 Set<String> keys = map1.keySet(); 19 for (String key : keys) { 20 21 // 2)遍历每个键,根据键提取值 22 Integer value = map1.get(key); 23 System.out.println(key + "=" + value); 24 } 25 26 System.out.println("--------------------------------------"); 27 28 // 2.键值对 29 Set<Map.Entry<String, Integer>> entries = map1.entrySet(); 30 for (Map.Entry<String, Integer> entry : entries) { 31 String key = entry.getKey(); 32 Integer value = entry.getValue(); 33 System.out.println(key + "=" + value); 34 } 35 System.out.println("----------------------------------------"); 36 37 // 3.Lambda 38 // map1.forEach(new BiConsumer<String, Integer>() { 39 // @Override 40 // public void accept(String key, Integer value) { 41 // System.out.println(key + "=" + value); 42 // } 43 // }); 44 map1.forEach((key, value) -> {System.out.println(key + "=" + value);}); 45 46 } 47 }
标签:Map,遍历,System,map1,put,API,key,println,out 来源: https://www.cnblogs.com/xiao-wang-tong-xue/p/16532984.html