//第一个类
package Arraylist_学生管理系统; public class Student { private String name; private int id; private String sex; private int age; public Student() { } public Student(String name, int id, String sex, int age) { this.name = name; this.id = id; this.sex = sex; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
//第二个类
package Arraylist_学生管理系统; import java.util.ArrayList; import java.util.Scanner; public class Student_menu { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //定义一个学号 int id=0; //创建一个集合 ArrayList<Student> list = new ArrayList<>(); while (true) { System.out.println("______________________________"); System.out.println("欢迎使用学生管理系统"); System.out.println("请按照提示输入你想要的操作"); System.out.println("******************************"); System.out.println("1.添加 2.删除 3.修改 4.查询 5.退出"); System.out.println("******************************"); //接收一个录入的数字 int choice = sc.nextInt(); //判断录入的数字 给出相应的操作 switch (choice) { case 1: id ++;//当有学生信息添加时id编号自动加一 // System.out.println("添加"); addStudent(list,id); break; case 2: //System.out.println("删除"); removeStudent(list,sc); break; case 3: //System.out.println("修改"); setStudent(list,sc); break; case 4: //System.out.println("查询"); getStudent(list); break; case 5: System.out.println("谢谢使用!!!"); System.exit(0);//结束虚拟机 } } } //查询方法 private static void getStudent(ArrayList<Student> list) { System.out.println("================================"); System.out.println("编号\t\t姓名\t\t性别\t\t年龄"); System.out.println("----------------------------------"); if (list.size() == 0) {//判断集合长度为0时,集合中没有数据 System.out.println("【无数据】"); } else {//集合中有数据 遍历输出 for (int i = 0; i < list.size(); i++) { Student stu=list.get(i);//从集合中获取对象 将地址赋给stu System.out.println(stu.getId()+"\t\t"+stu.getName()+"\t\t"+stu.getSex()+"\t\t"+stu.getAge()); } } } //修改方法 private static void setStudent(ArrayList<Student> list,Scanner sc) { System.out.println("请输入你想要修改学员的id");//例如 1 int id=sc.nextInt();//id=1; //遍历集合 找到学号为1的学员 for (int i = 0; i < list.size(); i++) { Student stu = list.get(i); if (id == stu.getId()) { //回显数据 System.out.println("【查询结果】"); System.out.println("学号:"+id); System.out.println("姓名:"+stu.getName()); System.out.println("年龄:"+stu.getAge()); System.out.println("性别:"+stu.getSex()); //修改数据 System.out.println("【修改】"); System.out.println("请输入新姓名[保留原数据输入0]:"); String newName=sc.next(); System.out.println("请输入新年龄[保留原数据输入0]"); int newAge = sc.nextInt(); System.out.println("请输入新性别[保留原数据输入0]"); String newSex = sc.next(); //当输入不是0是 才会更改信息 if (!"0".equals(newName)) { stu.setName(newName); } if (0 != newAge) { stu.setAge(newAge); } if (!"0".equals(newSex)) { stu.setSex(newSex); } System.out.println("【成功】数据已被修改"); return; } } //代码执行到这里 说明存入的数据没有该学号 System.out.println("【错误】学员编号:"+id+"没找到!!"); return; } //删除方法 private static void removeStudent(ArrayList<Student> list,Scanner sc) { System.out.println("请输入你想要删除的学员编号"); int id = sc.nextInt(); //遍历集合 for (int i = 0; i < list.size(); i++) { Student stu=list.get(i); if (id == stu.getId()) {//找到 //1.回显数据 System.out.println("【查询结果】"); System.out.println("学号:"+id); System.out.println("姓名:"+stu.getName()); System.out.println("年龄:"+stu.getAge()); System.out.println("性别:"+stu.getSex()); //2.确认删除 System.out.println("【确认删除】你确认删除这条数据吗?(y/n):"); String op=sc.next(); //3.是:执行删除 if ("y".equals(op)) { list.remove(i); System.out.println("【数据已被成功删除!】"); } else {//否:执行被取消 System.out.println("【取消】操作被取消"); } return; } } System.out.println("【错误】学员编号:"+id+"没找到!"); } //添加方法 private static void addStudent(ArrayList<Student> list,int id) { Scanner sc = new Scanner(System.in); System.out.println("请输入添加学生的姓名:"); String name = sc.next(); //System.out.println("请输入添加学生的学号:"); // int id = sc.nextInt(); System.out.println("请输入添加学生的性别:"); String sex = sc.next(); System.out.println("请输入添加学生的年龄:"); int age = sc.nextInt(); //将数据装入stu中 Student stu = new Student(); stu.setName(name); stu.setId(id); stu.setSex(sex); stu.setAge(age); //将stu装入集合中 list.add(stu); System.out.println("添加成功 【数据已保存!!!】"); } }