定义一个包含学生信息用顺序表实现学生信息的管理,包括学生信息的存取、插入、删除、查找等操作,学生信息包括:学号、姓名、成绩。提示:定义学生类Student,重写equals方法,将顺序表实现代码中的泛型T替换成Student。 的链表
时间: 2024-09-22 16:10:09 浏览: 84
定义一个包含学生信息(学号,姓名,成绩)的顺序表
在Java中,我们可以定义一个名为`Student`的学生类,包含学号、姓名和成绩属性。为了实现顺序列表(这里我们假设使用ArrayList),可以这样做:
```java
import java.util.ArrayList;
class Student {
int id;
String name;
double score;
// 构造函数
public Student(int id, String name, double score) {
this.id = id;
this.name = name;
this.score = score;
}
// 重写equals方法,用于比较两个学生的相等性
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null || getClass() != obj.getClass())
return false;
Student student = (Student) obj;
return id == student.id && name.equals(student.name) && Double.compare(score, student.score) == 0;
}
// 重写toString方法,方便打印查看学生信息
@Override
public String toString() {
return "Student{" +
"id=" + id +
", name='" + name + '\'' +
", score=" + score +
'}';
}
}
// 使用ArrayList作为学生信息的容器
public class StudentManager {
private ArrayList<Student> students;
public StudentManager() {
students = new ArrayList<>();
}
// 存储学生
public void addStudent(Student student) {
students.add(student);
}
// 删除学生
public boolean removeStudentById(int id) {
for (int i = 0; i < students.size(); i++) {
if (students.get(i).getId() == id) {
students.remove(i);
return true;
}
}
return false;
}
// 查找学生
public Student findStudentById(int id) {
for (Student student : students) {
if (student.getId() == id) {
return student;
}
}
return null; // 如果找不到则返回null
}
// 查找所有学生
public ArrayList<Student> getAllStudents() {
return students;
}
}
阅读全文