需求:创建一个HashMap集合,键是学号(String),值是学生对象(Student)。存储三个键值对元素,并遍历
思路:
定义学生类
创建HashMap集合对象
创建学生对象
把学生添加到集合
遍历集合
1.键找值
2.键值对对象找键和值
编写Student学生类:
package com.aynu2;
//学生类
public class Student {
private String name;
private int age;
public Student() {
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
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;
}
}
编写测试类:
package com.aynu2;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
//创建一个HashMap集合,键是学号(String),值是学生对象(Student)。存储三个键值对元素,并遍历
//思路:
// 定义学生类
// 创建HashMap集合对象
// 创建学生对象
// 把学生添加到集合
// 遍历集合
// 1.键找值
// 2.键值对对象找键和值
public class HashMapDemo {
public static void main(String[] args) {
//创建HashMap集合对象
Map<String,Student> hm=new HashMap<String,Student>();
//创建学生对象
Student s1=new Student("林青霞",30);
Student s2=new Student("张曼玉",25);
Student s3=new Student("王祖贤",33);
hm.put("aynu001",s1);
hm.put("aynu002",s2);
hm.put("aynu003",s3);
//遍历集合:1.键找值
Set<String> keySet = hm.keySet();
for (String key:keySet){
Student value = hm.get(key);
System.out.println(key+","+value.getName()+","+value.getAge());
}
System.out.println("------");
//遍历集合:2.键值对对象找键和值
Set<Map.Entry<String,Student>> entrySet=hm.entrySet();
for (Map.Entry<String,Student> me:entrySet){
String key= me.getKey();
Student value=me.getValue();
System.out.println(key+","+value.getName()+","+value.getAge());
}
}
}
aynu001,林青霞,30
aynu002,张曼玉,25
aynu003,王祖贤,33
------
aynu001,林青霞,30
aynu002,张曼玉,25
aynu003,王祖贤,33