标签:
Map是将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。当发生重复添加的话,后面的值将前面的覆盖,适用于put()和putAll()两个方法。
Map集合常用的两种遍历方式:
1、通过Key来查找对应的Value
2、通过键值对的Set集合来遍历Map集合
public class Person { //姓名 private String name; //年龄 private int age; //无参构造 public Person() { } //有参构造 public Person(String name, int age) { this.age = age; this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "Person{" + "name=‘" + name + ‘\‘‘ + ", age=" + age + ‘}‘; } }
import java.util.HashMap; import java.util.Map; import java.util.Set; /** * Map集合遍历 */ public class MapDemo { public static void main(String[] args) { //创建Map集合对象 Map<String, Person> map = new HashMap<String, Person>(); //创建Person对象元素 Person p1 = new Person("张君宝", 30); Person p2 = new Person("张三丰", 80); Person p3 = new Person("张真人", 110); //将元素添加到Map集合中 map.put("001", p1); map.put("002", p2); map.put("003", p3); //遍历Map集合 //方式1:通过key来查找value //1.1获取key对应的Set集合 Set<String> set = map.keySet(); //1.2遍历key对应的集合 for (String k : set) { //1.3根据key获取Map集合中的Person对象 Person p = map.get(k); System.out.println(k + "***" + p.getName() + "***" + p.getAge()); } System.out.println("----------------------------------------------"); //方式2:通过键值对的Set集合来遍历 //2.1获取键值对Set集合 Set<Map.Entry<String, Person>> entries = map.entrySet(); //2.2遍历键值对Set集合 for (Map.Entry<String, Person> p : entries) { //2.3获取对应的Key和Value String s = p.getKey(); Person person = p.getValue(); System.out.println(s + "***" + person.getName() + "***" + person.getAge()); } } }
标签:
原文地址:http://www.cnblogs.com/kacool/p/5567291.html