规则:
-
Map集合是一个双列集合, 元素有键值对构成. (key - value)
-
key值 不可以重复的, value是可以重复的 (因为Map中的key是存储到了set集合中)
-
一个key只能对应一个value, 而多个不同的key 可以对应同一个value
-
访问key可以直接获得value
-
Map本先就是一个顶层接口 它没有继承或实现Collection
语法:
-
Map集合的创建 : Map<key数据类型,value数据类型> 集合名称 = new HashMap<>();
-
存储数据: 集合名称.put(key,value);
-
删除数据:集合名称.remove(value);
-
获取元素 数据类型 变量名 = 集合名称.get(key);
注: HashMap 可以用null来作为key的值, 但是有且只能有一个
Map集合遍历方式 ***
-
通过 keySet() 来遍历
//1.使用keySet遍历集合
Set<Integer> set = map.keySet();
for (Integer key : set) {
String value = map.get(key);
System.out.println(key + ":" + value);
}
-
通过 entrySet() 来遍历
//2. 使用entrySet遍历集合
Set<Map.Entry<Integer, String>> entries = map.entrySet();
for (Map.Entry<Integer, String> entry : entries) {
Integer key = entry.getKey();
String value = entry.getValue();
System.out.println(key + ":" + value);
}
-
通过 iterator() 来遍历
//3. 使用iterator遍历集合
Iterator<Integer> iterator = map.keySet().iterator();
while (iterator.hasNext()){
Integer key = iterator.next();
String value = map.get(key);
System.out.println(key + ":" + value);
}
-
通过 values() 来遍历
//4. 使用values遍历集合
Collection<String> values = map.values();
for (String value : values) {
System.out.println(value);
}
-
通过 lambda表达式 来遍历
//5. 使用lambda遍历集合
map.forEach((k,v)->{
System.out.println(k + ":" + v);
});
标签:Map,遍历,map,value,笔记,key,集合 From: https://www.cnblogs.com/y6909/p/16667171.html