已知学生Student拥有以下属性,学号,姓名,性别,年龄 班级Sclass拥有以下属性,班级编号,班级名称,班主任姓名 往hashmap中添加数据,其中学生作为key,班级作为value。
时间: 2023-04-12 17:01:23 浏览: 125
可以使用Java中的HashMap来实现这个功能,代码如下:
```
HashMap<Student, Sclass> map = new HashMap<>();
// 创建学生对象
Student s1 = new Student("001", "张三", "男", 18);
Student s2 = new Student("002", "李四", "女", 17);
// 创建班级对象
Sclass c1 = new Sclass("001", "高一一班", "王老师");
Sclass c2 = new Sclass("002", "高一二班", "李老师");
// 添加数据到HashMap中
map.put(s1, c1);
map.put(s2, c2);
```
其中,Student和Sclass是自定义的类,代码如下:
```
class Student {
String id; // 学号
String name; // 姓名
String gender; // 性别
int age; // 年龄
public Student(String id, String name, String gender, int age) {
this.id = id;
this.name = name;
this.gender = gender;
this.age = age;
}
@Override
public boolean equals(Object obj) {
if (obj instanceof Student) {
Student s = (Student) obj;
return this.id.equals(s.id);
}
return false;
}
@Override
public int hashCode() {
return id.hashCode();
}
}
class Sclass {
String id; // 班级编号
String name; // 班级名称
String teacher; // 班主任姓名
public Sclass(String id, String name, String teacher) {
this.id = id;
this.name = name;
this.teacher = teacher;
}
}
```
在这个例子中,我们将学生对象作为HashMap的key,班级对象作为value,这样就可以通过学生对象来查找对应的班级信息了。
阅读全文