
实例:
package com.d5map;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
public class MapDemo1 {
public static void main(String[] args) {
Map map1=new HashMap<>();
map1.put("鸿星尔克",3);
map1.put("枸杞",4);
map1.put("java",100);
map1.put("java",1);
map1.put(null,null);
System.out.println(map1);
Map map2=new LinkedHashMap<>();
map2.put("鸿星尔克",3);
map2.put("枸杞",4);
map2.put("java",100);
map2.put("java",1);
map2.put(null,null);
System.out.println(map2);
}
}
Map常用Api:
map1.clear();//清空内容
System.out.println(map1.isEmpty());//判断是否为空
Integer key = map1.get("java");//根据键取值
map1.remove("java");//根据键删除内容
System.out.println(map1.containsKey("java"));//判断是否包含键
System.out.println(map1.containsValue(100));//判断是否包含值
Set
Collection
System.out.println(map1.size());//大小
Map
map1.putAll(map2);//拷贝内容
package com.d5map;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class MapDemo2 {
public static void main(String[] args) {
Map map1 = new HashMap<>();//无序的
map1.put("鸿星尔克", 3);
map1.put("枸杞", 4);
map1.put("java", 100);
map1.clear();//清空内容
System.out.println(map1);
System.out.println(map1.isEmpty());//判断是否为空
map1.put("鸿星尔克", 3);
map1.put("枸杞", 4);
map1.put("java", 100);
Integer key = map1.get("java");//根据键取值
System.out.println(key);
map1.remove("java");//根据键删除内容
System.out.println(map1);
map1.put("java", 100);
System.out.println(map1.containsKey("java"));//判断是否包含键
System.out.println(map1.containsValue(100));//判断是否包含值
Set keys = map1.keySet();//获取所有的键值的集合(Set型来接)
System.out.println(keys);
Collection values = map1.values();//获取所有的值的集合(Colletion型来接)
System.out.println(values);
System.out.println(map1.size());//大小
Map map2 = new HashMap<>();//无序的
map2.put("鸿星尔克2", 6);
map1.putAll(map2);//拷贝内容
System.out.println(map1);
}
}
Map集合遍历:键找值
package com.d5map;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class MapDemo3 {
public static void main(String[] args) {
Map map1 = new HashMap<>();//无序的
map1.put("鸿星尔克", 3);
map1.put("枸杞", 4);
map1.put("java", 100);
Set keys=map1.keySet();
for (String key : keys) {
int value=map1.get(key);
System.out.println(key+"--》"+value);
}
}
}
Map集合遍历:键值对
package com.d5map;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class MapDemo4 {
public static void main(String[] args) {
Map map1 = new HashMap<>();//无序的
map1.put("鸿星尔克", 3);
map1.put("枸杞", 4);
map1.put("java", 100);
Set> s1 = map1.entrySet();
for (Map.Entry entry : s1) {
System.out.println(entry.getKey() + "-->" + entry.getValue());
}
}
}
Map集合遍历:Lambda遍历
package com.d5map;
import java.util.HashMap;
import java.util.Map;
public class MapDemo5 {
public static void main(String[] args) {
Map map1 = new HashMap<>();//无序的
map1.put("鸿星尔克", 3);
map1.put("枸杞", 4);
map1.put("java", 100);
map1.forEach(( k,v)->{System.out.println(k+"-->"+v);});
}
}
HashMap特点:无序,不重复,无索引,底层是哈希表结构