JAVA—基础学生管理系统 “增删改查”

it2024-03-14  61

需求:

该系统主要功能如下: 添加学生:通过键盘录入学生信息,添加到集合中 删除学生:通过键盘录入要删除学生的学号,将该学生对象从集合中删除 修改学生:通过键盘录入要修改学生的学号,将该学生对象其他信息进行修改 查看学生:将集合中的学生对象信息进行展示 退出系统:结束程序

实现步骤

定义学生类,包含以下成员变量 private String sid // 学生id private String name // 学生姓名 private String age // 学生年龄 private String address // 学生所在地学生管理系统主界面的搭建步骤 2.1 用输出语句完成主界面的编写 2.2 用Scanner实现键盘输入 2.3 用switch语句完成选择的功能 2.4 用 循环完成功能结束后再次回到主界面学生管理系统的添加学生功能实现步骤 3.1 定义一个方法,接收ArrayList集合 3.2 方法内完成添加学生的功能 ①键盘录入学生信息 ②根据录 入的信息创建学生对象 ③将学生对象添加到集合中 ④提示添加成功信息 3.3 在添加学生的选项里调用 添加学生的方法学生管理系统的查看学生功能实现步骤 4.1 定义一个方法,接收ArrayList集合 4.2 方法内遍历集合,将学生信息进行输出 4.3 在查看所有学生选 项里调用查看学生方法学生管理系统的删除学生功能实现步骤 5.1 定义一个方法,接收ArrayList集合 5.2 方法中接收要删除学生的学号 5.3 遍历集合,获取每个学生对 象 5.4 使用学生对象的学号和录入的要删除的学号进行比较,如果相同,则将当前学生对象从集合中删除 5.5 在删除学生选项里调用删除学生的方法学生管理系统的修改学生功能实现步骤 6.1 定义一个方法,接收ArrayList集合 6.2 方法中接收要修改学生的学号 6.3 通过键盘录入学生对象所需 的信息,并创建对象 6.4 遍历集合,获取每一个学生对象。并和录入的修改学生学号进行比较.如果相 同,则使用新学生对象替换当前学生对象 6.5 在修改学生选项里调用修改学生的方法退出系统 使用System.exit(0);退出JVM

具体实现

学生类——Student.java

package com.company; /** * @author 10025 * @date 2020/9/23 19:07 */ public class Student { private String sid; private String sname; private String ssex; private String sage; private String address; public Student(){} public Student(String sid, String sname, String ssex, String sage, String address){ this.sname = sname; this.address = address; this.ssex = ssex; this.sid = sid; this.sage = sage; } public String getSid(){return sid;} public String getSname(){return sname;}; public String getSsex() {return ssex;} public String getSage() {return sage;} public String getAddress() { return address;} public void setSid(String sid) { this.sid = sid; } public void setSname(String sname) { this.sname = sname; } public void setSsex(String ssex) { this.ssex = ssex; } public void setSage(String sage) { this.sage = sage; } public void setAddress(String address) { this.address = address; } }

系统设计——StudentManager.java

package com.company; import javax.sound.midi.SysexMessage; import java.util.ArrayList; import java.util.Scanner; /** * @author 10025 * @date 2020/9/23 19:17 */ public class StudentManager { public static void main(String[] args) { ArrayList<Student> array = new ArrayList<Student>(); 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——退出系统"); System.out.println("请输入操作序号: "); //输入获取 Scanner sc = new Scanner(System.in); String line = sc.nextLine(); //操作选择判断 switch (line) { case "1": addStudent(array); break; case "2": delStudent(array); break; case "3": updataStudent(array); break; case "4": printStudent(array); break; case "5": System.out.println("成功退出!"); System.exit(0); //JVM退出 default: System.out.println("选择有误!"); } } } //判断集合中是否有信息存在 private static void printStudent(ArrayList<Student> array) { if (array.size() == 0) { System.out.println("无学生信息,请先添加!"); return; } //显示表头,\t是一个tab键的位置 System.out.println("学号\t姓名\t性别\t年龄\t居住地"); //显示信息 for (int i = 0; i < array.size(); i++) { Student S = array.get(i); System.out.println(S.getSid() + "\t\t" + S.getSname() + "\t" + S.getSsex() + "\t\t" + S.getSage() + "岁\t" + S.getAddress()); } } //添加学生信息 public static void addStudent(ArrayList<Student> array) { Scanner s = new Scanner(System.in); String sid; while (true) { System.out.println("请输入学生学号: "); sid = s.nextLine(); boolean flag = isUsed(array, sid); if (flag) { System.out.println("学生信息已存在,请前往修改或查看!"); } else { break; } } System.out.println("请输入学生姓名: "); String name = s.nextLine(); System.out.println("请输入学生性别: "); String sex = s.nextLine(); System.out.println("请输入学生年龄: "); String age = s.nextLine(); System.out.println("请输入学生住址: "); String address = s.nextLine(); //创建学生对象 Student st = new Student(); st.setSid(sid); st.setSname(name); st.setSsex(sex); st.setSage(age); st.setAddress(address); //添加到集合中 array.add(st); System.out.println("添加成功!"); } //判断学生是否已经存在 //存在返回true,否则返回false public static boolean isUsed(ArrayList<Student> array, String sid) { boolean flage = false; for (int i = 0; i < array.size(); i++) { Student S = array.get(i); if (S.getSid().equals(sid)) { flage = true; break; } } return flage; } //删除学生信息 public static void delStudent(ArrayList<Student> array) { if (array.size() == 0) { System.out.println("无学生信息,请先添加!"); return; } Scanner s = new Scanner(System.in); System.out.println("请输入要删除的学生学号: "); String sid = s.nextLine(); //获取要删除学生的标号 int index = -1; for (int i = 0; i < array.size(); i++) { Student st = array.get(i); if (st.getSid().equals(sid)) { index = i; break; } //判断该生是否在集合中 if (index == -1) { System.out.println("该学生信息不存在,请确认学号或重新添加!"); } else { array.remove(index); System.out.println("成功删除!"); } } } //修改学生信息 public static void updataStudent(ArrayList<Student> array) { if (array.size() == 0) { System.out.println("无学生信息,请先添加!"); return; } Scanner s = new Scanner(System.in); System.out.println("请输入要修改的学生学号: "); String sid = s.nextLine(); //获取要修改学生的标号 int index = -1; for (int i = 0; i < array.size(); i++) { Student st = array.get(i); if (st.getSid().equals(sid)) { index = i; break; } //判断该生是否在集合中 if (index == -1) { System.out.println("该学生信息不存在,请确认学号或重新添加!"); } else { System.out.println("开始修改学生信息!"); //键盘录入要修改的学生信息 System.out.println("请输入学生新姓名:"); String name = s.nextLine(); System.out.println("请输入学生新年龄:"); String age = s.nextLine(); System.out.println("请输入学生新居住地:"); String address = s.nextLine(); //创建学生对象 Student St = new Student(); St.setSid(sid); St.setSname(name); St.setSage(age); St.setAddress(address); //遍历集合修改对应的学生信息 for (int m = 0; m < array.size(); m++) { Student student = array.get(m); if (student.getSid().equals(sid)) { array.set(m, St); } } } } } }

输出:

**********学生管理系统********** 请选择如下操作之一: 1——添加学生信息 2——删除学生信息 3——修改学生信息 4——查看所有学生信息 5——退出系统 请输入操作序号: 1 请输入学生学号: 021 请输入学生姓名: xxx 请输入学生性别: 女 请输入学生年龄: 20 请输入学生住址: 曹妃甸 添加成功! **********学生管理系统********** 请选择如下操作之一: 1——添加学生信息 2——删除学生信息 3——修改学生信息 4——查看所有学生信息 5——退出系统 请输入操作序号: 4 学号 姓名 性别 年龄 居住地 021 xxx 女 20岁 曹妃甸 **********学生管理系统********** 请选择如下操作之一: 1——添加学生信息 2——删除学生信息 3——修改学生信息 4——查看所有学生信息 5——退出系统 请输入操作序号: 1 请输入学生学号: 12 请输入学生姓名: lll 请输入学生性别: 女 请输入学生年龄: 21 请输入学生住址: 曹妃甸 添加成功! **********学生管理系统********** 请选择如下操作之一: 1——添加学生信息 2——删除学生信息 3——修改学生信息 4——查看所有学生信息 5——退出系统 请输入操作序号: 4 学号 姓名 性别 年龄 居住地 021 xxx 女 20岁 曹妃甸 12 lll 女 21岁 曹妃甸 **********学生管理系统********** 请选择如下操作之一: 1——添加学生信息 2——删除学生信息 3——修改学生信息 4——查看所有学生信息 5——退出系统 请输入操作序号: 2 请输入要删除的学生学号: 20 该学生信息不存在,请确认学号或重新添加! 该学生信息不存在,请确认学号或重新添加! **********学生管理系统********** 请选择如下操作之一: 1——添加学生信息 2——删除学生信息 3——修改学生信息 4——查看所有学生信息 5——退出系统 请输入操作序号:

需要改进的地方:

存储信息数据的时候可以存到本地,连接本地数据库信息展示可以利用表格形式,更加清晰整齐修改时,可以选择只修改某一项或某几项,不用全部都修改
最新回复(0)