public class Student {
private String stuID;
private String name;
private Integer age;
private String address;
public Student(String stuID, String name, Integer age, String address) {
this.stuID = stuID;
this.name = name;
this.age = age;
this.address = address;
}
public String getStuID() {
return stuID;
}
public void setStuID(String stuID) {
this.stuID = stuID;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "学生[" +
"学号='" + stuID + '\'' +
", 姓名='" + name + '\'' +
", 年龄=" + age +
", 地址='" + address + '\'' +
']';
}
}
import java.util.ArrayList;
import java.util.Scanner;
public class StudentManage {
private static ArrayList<Student> stus = new ArrayList<Student>();
private static boolean isRun=true;
public static void main(String[] args) {
while (isRun) {
System.out.println("欢迎来到学生管理系统");
System.out.println("1.新增学生");
System.out.println("2.修改学生");
System.out.println("3.删除学生");
System.out.println("4.查询学生");
System.out.println("5.退出系统");
System.out.println("请选择[1-5]");
Scanner scanner = new Scanner(System.in);
int number = scanner.nextInt();
switch (number) {
case 1:
System.out.println("新增学生");
addStudent();
break;
case 2:
System.out.println("修改学生");
updateStudent();
break;
case 3:
System.out.println("删除学生");
deleteStudent();
break;
case 4:
System.out.println("查询学生");
showStudent();
break;
case 5:
isRun=false;
System.out.println("退出系统");
break;
}
}
}
public static void addStudent() {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入学生的学号");
String stuId = scanner.nextLine();
Student student = getByIdStudent(stuId);
if (student != null) {
System.out.println("这个学号已经被" + student.getName() + "占用,不能继续插入");
return;
}
System.out.println("请输入学生的姓名");
String name = scanner.nextLine();
System.out.println("请输入学生的地址");
String address = scanner.nextLine();
System.out.println("请输入学生的年龄");
Integer age = scanner.nextInt();
stus.add(new Student(stuId, name, age, address));
System.out.println("新增完成");
}
public static Student getByIdStudent(String stuID) {
return getByIdStudent(stuID, false);
}
public static Student getByIdStudent(String stuID, boolean isDelete) {
for (int i = 0; i < stus.size(); i++) {
Student student = stus.get(i);
if (student.getStuID().equals(stuID)) {
if (isDelete) {
return stus.remove(i);
}
return student;
}
}
return null;
}
public static void showStudent() {
if (stus.size() == 0) {
System.out.println("没有学生数据");
return;
}
for (int i = 0; i < stus.size(); i++) {
System.out.println(stus.get(i));
}
}
public static void deleteStudent() {
System.out.println("请输入删除学生的学号~");
Scanner scanner = new Scanner(System.in);
String stuID = scanner.nextLine();
Student student = getByIdStudent(stuID, true);
if (student == null) {
System.out.println("没有根据该学号查找到删除的学生");
return;
}
System.out.println("删除学生学号" + stuID + "成功");
}
public static void updateStudent(){
System.out.println("请输入要修改的学号");
Scanner scanner=new Scanner(System.in);
String stuID = scanner.nextLine();
Student student = getByIdStudent(stuID);
if (student==null){
System.out.println("从集合中没有查找到对应的学生对象");
return;
}
System.out.println("请输入学生修改的新姓名");
String newName = scanner.nextLine();
System.out.println("请输入学生修改的新地址");
String newAddress = scanner.nextLine();
System.out.println("请输入学生修改的新的年龄");
Integer newAge = scanner.nextInt();
student.setName(newName);
student.setAddress(newAddress);
student.setAge(newAge);
System.out.println("修改成功");
}
}