一、HashMap存储自定义类型键值
Map集合需要保证Key是唯一的,如果用自定义类型作为key值,必须重写hashCode方法和equals方法,以保证key唯一。
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class MapPerson04 {
public static void main(String[] args) {
show01();
System.out.println("==========================");
show02();
}
/*
* 如果使用自定义类作为key值,需要重新hashCode和equals方法,否则会导致重复
*
* */
private static void show02() {
Map<Person,String> map = new HashMap<>();
map.put(new Person("伊丽莎白",89),"英国");
map.put(new Person("小泉纯一郎",60),"日本");
map.put(new Person("特普朗",56),"美国");
map.put(new Person("金正日",35),"朝鲜");
/*如果没有重构hashCode方法和equals方法,就会打印两个伊丽莎白*/