3.代码实现:

Student类:

public class Student { private String sid;//学号 private String name;//姓名 private int age;//年龄 private String birthday;//生日

public Student() {
}

public Student(String sid, String name, int age, String birthday) {
    this.sid = sid;
    this.name = name;
    this.age = age;
    this.birthday = birthday;
}

public String getSid() {
    return sid;
}

public void setSid(String sid) {
    this.sid = sid;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public int getAge() {
    return age;
}

public void setAge(int age) {
    this.age = age;
}

public String getBirthday() {
    return birthday;
}

public void setBirthday(String birthday) {
    this.birthday = birthday;
}

}

Main类:

import java.util.ArrayList; import java.util.Scanner;

public class Main { public static void main(String[] args) { ArrayList list = new ArrayList<>(); while (true) { System.out.println("--------------欢迎来到学生管理系统--------------"); System.out.println("请选择您要进行的操作:"); System.out.println("1.添加学生"); System.out.println("2.删除学生"); System.out.println("3.修改学生"); System.out.println("4.查看学生"); System.out.println("5.退出系统");

        Scanner sc = new Scanner(System.in);
        String choice = sc.nextLine();

        switch (choice) {
            case "1":
                addStudent(list);
                break;
            case "2":
                deleteStudent(list);
                break;
            case "3":
                updateStudent(list);
                break;
            case "4":
                findAllStudent(list);
                break;
            case "5":
                System.out.println("感谢使用学生管理系统,再见!");
                return;
            default:
                System.out.println("输入有误,请重新输入!");
                break;
        }
    }
}

//添加学生
public static void addStudent(ArrayList<Student> list) {
    Scanner sc = new Scanner(System.in);
    String sid;
    while (true) {
        System.out.println("请输入学生学号:");
        sid = sc.nextLine();
        boolean flag = isUsed(list, sid);
        if (flag) {
            System.out.println("该学号已存在,请重新输入!");
        } else {
            break;
        }
    }
    System.out.println("请输入学生姓名:");
    String name = sc.nextLine();
    System.out.println("请输入学生年龄:");
    int age = Integer.parseInt(sc.nextLine());
    System.out.println("请输入学生生日:");
    String birthday = sc.nextLine();

    Student stu = new Student(sid, name, age, birthday);
    list.add(stu);
    System.out.println("添加成功!");
}

//判断学号是否已经被使用
public static boolean isUsed(ArrayList<Student> list, String sid) {
    for (int i = 0; i < list.size(); i++) {
        Student stu = list.get(i);
        if (stu.getSid().equals(sid)) {
            return true;
        }
    }
    return false;
}

//删除学生
public static void deleteStudent(ArrayList<Student> list) {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入要删除的学生学号:");
    String sid = sc.nextLine();

    int index = getIndex(list, sid);//查找该学号在集合的索引
    if (index == -1) {
        System.out.println("该学号不存在!");
    } else {
        list.remove(index);
        System.out.println("删除成功!");
    }
}

//查找学生在集合中对应的索引
public static int getIndex(ArrayList<Student> list, String sid) {
    for (int i = 0; i < list.size(); i++) {
        Student stu = list.get(i);
        if (stu.getSid().equals(sid)) {
            return i;
        }
    }
    return -1;
}

//修改学生信息
public static void updateStudent(ArrayList<Student> list) {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入要修改的学生学号:");
    String sid = sc.nextLine();

    int index = getIndex(list, sid);//查找该学号在集合的索引
    if (index == -1) {
        System.out.println("该学号不存在!");
    } else {
        System.out.println("请输入学生姓名:");
        String name = sc.nextLine();
        System.out.println("请输入学生年龄:");
        int age = Integer.parseInt(sc.nextLine());
        System.out.println("请输入学生生日:");
        String birthday = sc.nextLine();

        Student stu = new Student(sid, name, age, birthday);
        list.set(index, stu);
        System.out.println("修改成功!");
    }
}

//查看所有学生信息
public static void findAllStudent(ArrayList<Student> list) {
    System.out.println("学号\t姓名\t年龄\t生日");
    for (int i = 0; i < list.size(); i++) {
        Student stu = list.get(i);
        System.out.println(stu.getSid() + "\t" + stu.getName() + "\t" + stu.getAge() + "岁\t" + stu.getBirthday());
    }
}
1需求描述 针对目前我们的所学内容完成一个综合案例:学生管理系统!该系统主要功能如下:1添加学生:通过键盘录入学生信息添加到集合中2删除学生:通过键盘录入要删除学生的学号如果学号存在将该学生对象从集合中删除; 如果学号不存在 提示无法删除3修改学生:通过键盘录入要修改学生的学号将该学生对象其他信息进行修改 修改完毕保存在集合中4查看学生:将集合中的学生对象信息进行展示5退出系统:结束程序2实现步骤

原文地址: http://www.cveoy.top/t/topic/g9Ir 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录