1、API介绍
2、构造方法
import java.util.HashMap;import java.util.Map;publicclassDemo2_HashMap{publicstaticvoidmain(String[] args){//HashMap() 使用默认容量 16 和负载因子 0.75
HashMap<String, String> map=newHashMap();
System.out.println(map);//HashMap(int) 自定义容量,使用默认负载因子 0.75f
HashMap<String, String> map2=newHashMap(100);
System.out.println(map2);//HashMap(int,float) 自定义容量以及负载因子
HashMap<String, String> map3=newHashMap(100,0.5f);
System.out.println(map3);//HashMap(Map) 初始化集合元素
Map<String, String> map1=newHashMap();
map1.put("七龙珠","孙悟空");
HashMap<String, String> map4=newHashMap(map1);
System.out.println(map4);//{七龙珠=孙悟空}}}
3、功能方法(与Map接口功能方法一致)
import java.util.HashMap;import java.util.Map;import java.util.Objects;classPerson{
String name;int age;publicPerson(String name,int age){this.name= name;this.age= age;}@Overridepublic StringtoString(){return"Person{"+"name='"+ name+'\''+", age="+ age+'}';}@Overridepublicbooleanequals(Object o){if(this== o)returntrue;if(o== null||getClass()!= o.getClass())returnfalse;
Person person=(Person) o;return age== person.age&&
Objects.equals(name, person.name);}@OverridepublicinthashCode(){return Objects.hash(name, age);}}publicclassDemo2_HashMap{publicstaticvoidmain(String[] args){//需求:存储人类到Map集合中,确保人类必须唯一//分析:1、人类唯一准则,姓名和年龄相同// 2、将人类对象存储到Map集合key列中。// 3、HashMap,底层哈希表,使用hashCode和equals()来确定是否存储数据。
Person p=newPerson("孙悟空",50);
Person p2=newPerson("鸣人",22);
Person p3=newPerson("路飞",18);
HashMap<Person,String> map=newHashMap<>();
map.put(p,"七龙珠");
map.put(p2,"火影忍者");
map.put(p3,"海贼王");
Person p4=newPerson("路飞",18);
String s= map.put(p4,"航海王");
System.out.println(s);
System.out.println(map);}}