定义数组存储3个学生对象。 学生的属性:学号,姓名,年龄。 要求1:添加的时候需要进行学号的唯一性判断。 要求2:添加完毕之后,遍历所有学生信息。 要求3:通过id删除学生信息 如果存在,
时间: 2024-03-11 08:49:32 浏览: 122
【C语言】学生信息管理_数组
好的,以下是一个示例代码,实现了定义数组存储3个学生对象,并满足要求1、2、3:
```java
import java.util.Scanner;
public class Student {
private int id;
private String name;
private int age;
public Student(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public static void main(String[] args) {
// 定义一个长度为3的学生对象数组
Student[] students = new Student[3];
Scanner scanner = new Scanner(System.in);
// 添加学生信息
for (int i = 0; i < students.length; i++) {
System.out.println("请输入学生" + (i + 1) + "的学号:");
int id = scanner.nextInt();
// 判断学号是否唯一
for (int j = 0; j < i; j++) {
if (students[j].getId() == id) {
System.out.println("学号已存在,请重新输入!");
id = scanner.nextInt();
j = -1; // 重新从头开始判断
}
}
System.out.println("请输入学生" + (i + 1) + "的姓名:");
String name = scanner.next();
System.out.println("请输入学生" + (i + 1) + "的年龄:");
int age = scanner.nextInt();
// 创建学生对象并添加到数组中
students[i] = new Student(id, name, age);
}
// 遍历所有学生信息
System.out.println("所有学生信息如下:");
for (int i = 0; i < students.length; i++) {
System.out.println("学号:" + students[i].getId() + ",姓名:" + students[i].getName() + ",年龄:" + students[i].getAge());
}
// 通过id删除学生信息
System.out.println("请输入要删除的学生的学号:");
int deleteId = scanner.nextInt();
boolean exist = false; // 标记是否存在该学生
for (int i = 0; i < students.length; i++) {
if (students[i].getId() == deleteId) {
// 将该学生对象从数组中移除
for (int j = i; j < students.length - 1; j++) {
students[j] = students[j + 1];
}
students[students.length - 1] = null;
exist = true;
break;
}
}
if (exist) {
System.out.println("删除成功!");
// 遍历所有学生信息
System.out.println("删除后所有学生信息如下:");
for (int i = 0; i < students.length; i++) {
if (students[i] != null) {
System.out.println("学号:" + students[i].getId() + ",姓名:" + students[i].getName() + ",年龄:" + students[i].getAge());
}
}
} else {
System.out.println("学号不存在,删除失败!");
}
}
}
```
该示例代码中,我们定义一个长度为3的学生对象数组,通过循环添加学生信息,每次添加时都会进行学号的唯一性判断。添加完毕后,我们遍历数组中所有学生信息。最后,通过输入要删除的学生的学号,如果存在该学生,就将该学生对象从数组中移除,并重新遍历数组中所有学生信息。
阅读全文