java源碼示例展示:
package map; import java.util.LinkedHashMap; import java.util.Map; import java.util.Scanner; import java.util.Set; /** * 使用linkedhashmap 效果最好 * 存儲學生對象,還要輸出 使用 遍歷輸出 * @author superdrew */ public class TestMapStudent { public static void main(String[] args) { //創建 存儲stu的 map key 是 int id value 是具體的每一個學生 Map<Integer,Student> stuMap = new LinkedHashMap<Integer,Student>(); //創建學生對象 Student stu1 = new Student(1001, "Drew", 89, 21); Student stu2 = new Student(2002, "SuperDrew", 99, 20); Student stu3 = new Student(3003, "Lily", 100, 25); Student stu4 = new Student(4004, "Mark", 78, 22); Student stu5 = new Student(5005, "Bob", 88, 21); //把學生對象放入 到 map集合 stuMap.put(stu1.getId(), stu1); stuMap.put(stu2.getId(), stu2); stuMap.put(stu3.getId(), stu3); stuMap.put(stu4.getId(), stu4); stuMap.put(stu5.getId(), stu5); //根據輸入的具體學號 返回一個具體的學生信息 @SuppressWarnings("resource") Scanner sc = new Scanner(System.in); System.out.println("請輸入要查找的學號:"); int id = sc.nextInt(); Student stuObject = stuMap.get(id); System.out.println(stuObject); //遍歷map集合輸出---錯誤提示:map集合的三種遍歷輸出方式,請看我的上一篇blogs。 /*for(int i=1;i<=stuMap.size();i++){ System.out.println(stuMap.get(i)); }*/ /*小結:輸出全部為NULL,說明遍歷map集合的時候不能簡單的使用for i遍歷。*/ //獲取 stuMap所有的key System.out.println("所有的學生信息如下:"); Set<Integer> stuSet = stuMap.keySet(); for(int stuId:stuSet){ System.out.println(stuMap.get(stuId)); } } }
實體類Student.java:

1 package map; 2 /** 3 * 學生類 4 * @author superdrew 5 * 6 */ 7 public class Student { 8 private int id; 9 private String name; 10 private double score; 11 private int age; 12 13 public int getId() { 14 return id; 15 } 16 public void setId(int id) { 17 this.id = id; 18 } 19 public String getName() { 20 return name; 21 } 22 public void setName(String name) { 23 this.name = name; 24 } 25 public double getScore() { 26 return score; 27 } 28 public void setScore(double score) { 29 this.score = score; 30 } 31 public int getAge() { 32 return age; 33 } 34 public void setAge(int age) { 35 this.age = age; 36 } 37 38 public Student(int id, String name, double score, int age) { 39 super(); 40 this.id = id; 41 this.name = name; 42 this.score = score; 43 this.age = age; 44 } 45 @Override 46 public String toString() { 47 return "Student [id=" + id + ", name=" + name + ", score=" + score + ", age=" + age + "]"; 48 } 49 }
結果展示: