java泛型之Map

import java.util.HashMap;
import java.util.Map;


public class Test2 {
	public static void main(String[] args){

		Person p1 = new Person("小红",18);
		Person p =new Person("xiaoming",22);
		
		Map<String , Person> men = new HashMap<>();
		men.put(p.name, p);
		men.put(p1.name,p1);
	
	
		System.out.println(men.get("xiaoming"));
		//一个值可以关联多个key,但一个key只能够关联一个值,因为最终是通过key来取值,不然系统不知道该取哪个
		men.put(p.name,p1);
		//如果把一个key赋值两次,那么,这个key所指向的值为最后一次所写入的值。
		
		for(String name : men.keySet()){
			System.out.println(name);//输出什么,看一眼name的类型,就可以了
		}
		
		for(Person person : men.values()){
			System.out.print(person);
		}

		for(Map.Entry<String, Person> entry: men.entrySet()){
			System.out.println(entry);//
		}
		
	}
}

map是一个映射类型,把key和value连接到一起,put输入,foreach输出。
notes: key关联的value,为最后一次写入该key的value。
Map.Entry为一个泛型类。(暂时这样理解)

你可能感兴趣的:(java的本质系列)