目录
一、STUDENT包
1.Student类:
学生类,用来构造学生属性
package STUDENT;
public class Student {
String id;
String name;
double score;
public Student() {
}
public Student(String id, String name, double score) {
this.id = id;
this.name = name;
this.score = score;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
}
二、USER包
1.Demo类:
演示类,用来存放主函数
package USER;
import java.util.ArrayList;
import java.util.Scanner;
import OPERATE.Add;//导入OPERATE包中的Add文件
import OPERATE.Delete;//导入OPERATE包中的Delete文件
import OPERATE.Seek;//导入OPERATE包中的Seek文件
import OPERATE.Revise;//导入OPERATE包中的Revise文件
import OPERATE.Show;//导入OPERATE包中的Show文件
import STUDENT.Student;//导入STUDENT包中的Student文件
public class Demo {
public static void main(String[] args) {
Face face = new Face();
face.menu();
ArrayList<Student> list = new ArrayList<Student>();
while (true) {
System.out.println("请选择需要进行的操作:");
Scanner in = new Scanner(System.in);
int num = in.nextInt();
switch (num) {
case 1:
Add.addStudent(list);//增加操作,传入list动态数组
break;
case 2:
Delete.deleteStudent(list);//删除操作,传入list动态数组
break;
case 3:
Revise.reviseStudent(list);//修改操作,传入list动态数组
break;
case 4:
Seek.findStudent(list);//查找操作,传入list动态数组
break;
case 5:
Show.showStudent(list);//展示操作,传入list动态数组
break;
case 6:
System.out.println("感谢你的使用!");
System.exit(0);
}
System.out.println("1.增加 2.删除 3.修改 4.查询 5.展示 6.退出");//方便下一步知晓操作
}
}
}
2.Face类:
界面类,用来打印菜单
package USER;
public class Face {
public void menu() {
System.out.println("**********欢迎来到学生管理系统!********");
System.out.println("** * * * * * * * * **");
System.out.println("* * * * * * * * * * * * * * * * * * * *");
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("* 6.退出学生管理系统 *");
System.out.println("** * * * * * * * * **");
System.out.println("* * * * * * * * * * * * * * * * * * * *");
System.out.println("* * * * * * * * * * *");
System.out.println("***************************************");
}
}
三、OPERATE包
1.Add类
添加类,用来添加数据
- 有参构造
package OPERATE;
import java.util.ArrayList;
import java.util.Scanner;
import STUDENT.Student;//导入STUDENT包中的Student文件
public class Add {
public static void addStudent(ArrayList<Student> list) {
Scanner in = new Scanner(System.in);
System.out.println("请输入要添加的学生学号");
String id = in.nextLine();
System.out.println("请输入要添加的学生姓名");
String name = in.nextLine();
System.out.println("请输入要添加的学生成绩");
double score = in.nextDouble();
Student student = new Student(id, name, score);//采用有参构造赋值
list.add(student);
System.out.println("添加成功!");
}
}
- 无参构造
package OPERATE;
import java.util.ArrayList;
import java.util.Scanner;
import STUDENT.Student;//导入STUDENT包中的Student文件
public class Add {
public static void addStudent(ArrayList<Student> list) {
Student student = new Student();//采用无参构造赋值
Scanner in = new Scanner(System.in);
System.out.println("请输入要添加的学生学号");
String id = in.next();
student.setId(id);
System.out.println("请输入要添加的学生姓名");
String name = in.next();
student.setName(name);
System.out.println("请输入要添加的学生成绩");
double score = in.nextDouble();
student.setScore(score);
list.add(student);
System.out.println("添加成功!");
}
}
2.Delete类
删除类,用来删除数据
package OPERATE;
import java.util.ArrayList;
import java.util.Scanner;
import STUDENT.Student;//导入STUDENT包中的Student文件
public class Delete {
public static void deleteStudent(ArrayList<Student> list) {
Scanner in = new Scanner(System.in);
System.out.println("请输入你要删除的学生学号");
String id = in.next();
for (int i = 0; i < list.size(); i++) {//遍历动态数组
if (list.get(i).getId().equals(id)) {
list.remove(i);
}
}
System.out.println("删除成功!");
}
}
3.Revise类
修改类,用来修改数据
package OPERATE;
import java.util.ArrayList;
import java.util.Scanner;
import STUDENT.Student;//导入STUDENT包中的Student文件
public class Revise {
public static void reviseStudent(ArrayList<Student> list) {
Scanner in = new Scanner(System.in);
System.out.println("请输入要修改学生学号");
String id = in.next();
System.out.println("请输入学生的新姓名");
String name = in.next();
System.out.println("请输入学生的新成绩");
double score = in.nextDouble();
Student student = new Student(id, name, score);
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getId().equals(id)) {
list.set(i, student);
break;
}
}
System.out.println("修改成功!");
}
}
4.Seek类
查找类,用来查找数据
package OPERATE;
import java.util.ArrayList;
import java.util.Scanner;
import STUDENT.Student;//导入STUDENT包中的Student文件
public class Seek {
public static void findStudent(ArrayList<Student> list) {
Scanner in = new Scanner(System.in);
System.out.println("请输入你要查找的学生学号");
String id = in.next();
for (int i = 0; i < list.size(); i++) {//遍历动态数组
if (list.get(i).getId().equals(id)) {
System.out.println("查询成功!");
System.out.println("该学生学号:" + list.get(i).getId() + "该学生名字:" + list.get(i).getName() + "该学生成绩:"
+ list.get(i).getScore());
}
}
}
}
5.Show类
展示类,用来展示数据
package OPERATE;
import java.util.ArrayList;
import STUDENT.Student;//导入STUDENT包中的Student文件
public class Show {
public static void showStudent(ArrayList<Student> list) {
System.out.println("查询成功!");
for (int i = 0; i < list.size(); i++) {//遍历动态数组
System.out.println(
"学号:" + list.get(i).getId() + " 姓名:" + list.get(i).getName() + " 成绩" + list.get(i).getScore());
}
System.out.println("一共有 " + list.size() + " 个学生信息");
}
}
四、运行结构展示
/*
**********欢迎来到学生管理系统!********
** * * * * * * * * **
* * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * *
* 请选择所需要进行的操作 *
* 1.添加学生信息 *
* 2.删除学生信息 *
* 3.修改学生信息 *
* 4.查寻学生信息 *
* 5.展示所有学生信息 *
* 6.退出学生管理系统 *
** * * * * * * * * **
* * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * *
***************************************
* 请选择需要进行的操作:
* 1
* 请输入要添加的学生学号
* 2022400001
* 请输入要添加的学生姓名
* 康茹
* 请输入要添加的学生成绩
* 520
* 添加成功!
* 1.增加 2.删除 3.修改 4.查询 5.展示 6.退出
* 请选择需要进行的操作:
* 1
* 请输入要添加的学生学号
* 2022400002
* 请输入要添加的学生姓名
* 李湘
* 请输入要添加的学生成绩
* 521
* 添加成功!
* 1.增加 2.删除 3.修改 4.查询 5.展示 6.退出
* 请选择需要进行的操作:
* 5
* 查询成功!
* 学号:2022400001 姓名:康茹 成绩520.0
* 学号:2022400002 姓名:李湘 成绩521.0
* 一共有 2 个学生信息
* 1.增加 2.删除 3.修改 4.查询 5.展示 6.退出
* 请选择需要进行的操作:
* 4
* 请输入你要查找的学生学号
* 2022400001
* 查询成功!
* 该学生学号:2022400001 该学生名字:康茹 该学生成绩:520.0
* 1.增加 2.删除 3.修改 4.查询 5.展示 6.退出
* 请选择需要进行的操作:
* 2
* 请输入你要删除的学生学号
* 2022400001
* 删除成功!
* 1.增加 2.删除 3.修改 4.查询 5.展示 6.退出
* 请选择需要进行的操作:
* 5
* 查询成功!
* 学号:2022400002 姓名:李湘 成绩521.0
* 一共有 1 个学生信息
* 1.增加 2.删除 3.修改 4.查询 5.展示 6.退出
* 请选择需要进行的操作:
* 6
* 感谢你的使用!
*/