创建一个学生类(Student),包含:学号、姓名、科目、成绩等字段,通过字符串索引器获取或设置各科成绩的值。
时间: 2024-09-28 08:07:18 浏览: 29
设计一个学生类Student(学生学号、姓名、数学、英语、计算机成绩;)
5星 · 资源好评率100%
创建一个名为`Student`的类,可以按照以下结构设计:
```java
public class Student {
private String studentID;
private String name;
private Map<String, Integer> grades; // 使用Map存储科目和成绩
// 构造函数
public Student(String studentID, String name) {
this.studentID = studentID;
this.name = name;
this.grades = new HashMap<>(); // 初始化空的成绩字典
}
// 使用get方法获取成绩
public int getGrade(String subject) {
return grades.getOrDefault(subject, -1); // 如果科目不存在返回默认值-1
}
// 使用set方法设置成绩
public void setGrade(String subject, int score) {
grades.put(subject, score);
}
// 使用字符串索引器访问成绩
@Override
public String toString() {
return "Student{" +
"studentID='" + studentID + '\'' +
", name='" + name + '\'' +
", grades=" + grades +
'}';
}
}
```
在这个类中,`grades`是一个`HashMap`,用于存储每个学科及其对应的成绩。你可以通过`getGrade`方法获取某个学科的成绩,如果该学科还未记录,则返回默认值;通过`setGrade`方法设置成绩。同时,为了支持字符串索引,我们覆盖了`toString`方法,使其看起来像一个键值对的集合。
阅读全文