大家好,我是Ziph!
学生成绩管理系统实例
- 实现一个学生成绩管理的简单系统。要求可以添加、删除、修改、查询成绩
- 创建界面相关的接口:将菜单中显示的内容定义成若干字符串常量,放入一个接口Menu中以便使用
TestDemo(主类)
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;
/**
* @Author Ziph
* @date 2020/2/19
* @Email [email protected]
*/
public class TestDemo implements Menu {
public static ArrayList<Student> list = null;//定义一个列表对象来保持成绩数据
public static void main(String[] args) {
list = new ArrayList<Student>();
Scanner s = new Scanner(System.in);
initData();
//循环显示菜单
int choice = 0;
do {
System.out.println(Menu.PRJNAME);
System.out.println(Menu.OPTION1);
System.out.println(Menu.OPTION2);
System.out.println(Menu.OPTION3);
System.out.println(Menu.OPTION4);
System.out.println(Menu.OPTION5);
System.out.println(Menu.OPTION0);
System.out.println(Menu.OPTION7);
System.out.print("请输入你要操作的编号:");
choice = s.nextInt();
switch (choice) {
case 1:
add();
break;
case 2:
delete();
break;
case 3:
modify();
break;
case 4:
display();
break;
case 5:
query();
break;
case 0:
exit();
break;
default:
System.out.println("输入错误!");
}
} while (true);
}
//退出
public static void exit() {
System.exit(0);
}
//初始化
public static void initData() {
list.add(new Student("001", "Ziph", "Java-1班", 80.0, 90.0, 99.0));
list.add(new Student("002", "Join", "Java-2班", 44.0, 66.0, 88.0));
list.add(new Student("003", "Marry", "Java-1班", 44.0, 88.0, 77.0));
}
//添加
public static void add() {
Scanner s = new Scanner(System.in);
System.out.print("请输入学号:");
String stuNo = s.next();
System.out.print("请输入姓名:");
String stuName = s.next();
System.out.print("请输入班级:");
String stuClass = s.next();
System.out.print("请输入数学成绩:");
double math = s.nextDouble();
System.out.print("请输入英语成绩:");
double english = s.nextDouble();
System.out.print("请输入计算机成绩:");
double computer = s.nextDouble();
Student student = new Student(stuNo, stuName, stuClass, math, english, computer);
list.add(student);
display();
}
//删除
public static void delete() {
Scanner s = new Scanner(System.in);
System.out.print("请输入要删除学生的学号:");
String stuNo = s.next();
Iterator<Student> it = list.iterator();
while (it.hasNext()) {
Student student = it.next();
if (student.getStuNo().equals(stuNo)) {
list.remove(student);
System.out.println("删除成功!");
break;
}
}
}
//修改
public static void modify() {
Scanner s = new Scanner(System.in);
System.out.print("请输入要修改学生的学号:");
String stuNo = s.next();
Iterator<Student> it = list.iterator();
int index = 0;
while (it.hasNext()) {
Student student = it.next();
if (student.getStuNo().equals(stuNo)) {
System.out.print("原学号:" + stuNo + ",新学号:");
String newStuNo = s.next();
System.out.print("原姓名:" + student.getStuName() + ",新姓名:");
String newStuName = s.next();
System.out.print("原班级:" + student.getStuClass() + ",新班级:");
String newStuClass = s.next();
System.out.print("原数学成绩:" + student.getMath() + ",新数学成绩:");
double newMath = s.nextDouble();
System.out.print("原英语成绩:" + student.getEnglish() + ",新英语成绩:");
double newEnglish = s.nextDouble();
System.out.print("原计算机成绩:" + student.getComputer() + ",新计算机成绩:");
double newComputer = s.nextDouble();
Student newStudent = new Student(newStuNo, newStuName, newStuClass, newMath, newEnglish, newComputer);
list.set(index, newStudent);
display();
break;
}
}
index++;
}
//显示
public static void display() {
Iterator<Student> it = list.iterator();//迭代器
while (it.hasNext()) {
System.out.println(it.next());
}
}
//查询
public static void query() {
Scanner s = new Scanner(System.in);
System.out.print("请输入要查询学生的学号:");
String stuNo = s.next();
Iterator<Student> it = list.iterator();
while (it.hasNext()) {
Student student = it.next();
if (student.getStuNo().equals(stuNo)) {
System.out.println(student);
break;
}
}
}
}
Student类
/**
* @Author Ziph
* @date 2020/2/19
* @Email [email protected]
*/
public class Student {
private String stuNo; //学号
private String stuName; //姓名
private String stuClass; //班级
private double math; //数学成绩
private double english; //英语成绩
private double computer; //计算机成绩
public Student(String stuNo, String stuName, String stuClass, double math, double english, double computer) {
this.stuNo = stuNo;
this.stuName = stuName;
this.stuClass = stuClass;
this.math = math;
this.english = english;
this.computer = computer;
}
public Student() {
}
public String getStuNo() {
return stuNo;
}
public void setStuNo(String stuNo) {
this.stuNo = stuNo;
}
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
}
public String getStuClass() {
return stuClass;
}
public void setStuClass(String stuClass) {
this.stuClass = stuClass;
}
public double getMath() {
return math;
}
public void setMath(double math) {
this.math = math;
}
public double getEnglish() {
return english;
}
public void setEnglish(double english) {
this.english = english;
}
public double getComputer() {
return computer;
}
public void setComputer(double computer) {
this.computer = computer;
}
public double getSum() {
double sum = math + english + computer;
return sum;
}
public String toString() {
return "学号:" + stuNo +
"\t姓名:" + stuName +
"\t班级:" + stuClass +
"\t数学成绩:" + math +
"\t英语成绩:" + english +
"\t计算机成绩:" + computer +
"\t总成绩:" + getSum();
}
}
Menu菜单接口
/**
* @Author Ziph
* @date 2020/2/19
* @Email [email protected]
*/
public interface Menu {
//定义项目菜单所涉及到的相关字符串
String PRJNAME = "--------学生成绩管理系统--------";
String OPTION1 = "=1.添加学生信息";
String OPTION2 = "=2.删除学生信息";
String OPTION3 = "=3.修改学生信息";
String OPTION4 = "=4.显示学生信息";
String OPTION5 = "=5.查询学生信息";
String OPTION0 = "=6.退出系统";
String OPTION7 = "-------------------------------";
}
执行结果:
显示
删除
查询
修改
添加
退出
有问题请留言回复!