目录
需求分析
需求:
分析:
学生管理系统开始菜单界面
学生类:
功能实现:
添加功能
删除功能
修改功能
查询功能
项目实现
项目实现分析:
1.实现菜单选择功能
2.实现添加学生信息功能
3.实现删除学生信息功能
4.实现修改学生信息功能
5.实现查询学生信息功能
需求分析
需求:
编写一个学生管理系统,结果在控制台上显示(目前能力有限)
分析:
学生管理系统开始菜单界面
---------------------------------------欢迎来到学生管理系统--------------------------------------- -----------------1.添加学生信息
-----------------2.删除学生信息
-----------------3.修改学生信息
-----------------4.查询学生信息
-----------------5.退出系统
------------------"请输入您的选择:"
学生类:
属性:id(唯一),姓名,年龄,专业
功能实现:
添加功能
键盘录入输入学生信息
删除功能
1.id存在,删除学生信息
2. id不存在,提示该学生不存在,并返回初始页面
修改功能
1.id存在,输入学生信息修改
2. id不存在,提示该学生不存在,并返回初始页面
查询功能
1.id存在,输出学生信息
2. id不存在,提示该学生不存在,并返回初始页面
项目实现
项目实现分析:
1.实现菜单选择功能
public class StudentDemo {
public static void main(String[] args) {
//打印菜单
while(true){
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 choose = sc.next();
switch (choose) {
case "1":
System.out.println("添加学生信息");
break;
case "2":
System.out.println("删除学生信息");
break;
case "3":
System.out.println("修改学生信息");
break;
case "4":
System.out.println("查询学生信息");
break;
case "5":
System.out.println("退出系统");
//停止虚拟机运行
System.exit(0);
default:
System.out.println("没有这个选项");
break;
}
}
}
}
2.实现添加学生信息功能
//实现添加学生信息功能
public static void addStudent(ArrayList<Student> list) {
//创建学生对象
Student stu = new Student();
//创建键盘录入对象
Scanner sc = new Scanner(System.in);
//id已经存在
while(true){
//提示输入id
System.out.println("请输入id");
String id = sc.next();
boolean flag = contains(list,id);
if (flag) {
System.out.println("id已经存在,请重新输入其他id");
continue;
} else {
stu.setId(id);
break;
}
}
//提示输入姓名
System.out.println("请输入姓名");
String name = sc.next();
stu.setName(name);
//提示输入年龄
System.out.println("请输入年龄");
int age = sc.nextInt();
stu.setAge(age);
//提示输入专业
System.out.println("请输入专业");
String major = sc.next();
stu.setMajor(major);
//将学生对象添加到集合中
list.add(stu);
System.out.println("学生信息添加成功");
}
3.实现删除学生信息功能
//实现删除学生信息功能
public static void deleteStudent(ArrayList<Student> list) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要删除的id");
String id = sc.next();
int index = getIndex(list,id);
if(index >= 0){
list.remove(index);
System.out.println("id为"+id+"的学生信息已经被成功删除");
}else{
System.out.println("id不存在,删除失败");
}
}
4.实现修改学生信息功能
//实现修改学生信息功能
public static void updateStudent(ArrayList<Student> list) {
Scanner sc = new Scanner(System.in);
//提示要删除的学生的id
System.out.println("请输入要修改学生的id");
String id = sc.next();
int index = getIndex(list, id);
if (index == -1) {
System.out.println("修改的id不存在,请重新输入");
return;
}
Student stu = list.get(index);
//输入其他修改的信息
System.out.println("请输入修改的学生姓名");
String newName = sc.next();
stu.setName(newName);
System.out.println("请输入修改的学生年龄");
int newAge = sc.nextInt();
stu.setAge(newAge);
System.out.println("请输入修改的学生专业");
String newMajor = sc.next();
stu.setMajor(newMajor);
//提示学生信息修改成功
System.out.println("学生信息修改成功");
}
5.实现查询学生信息功能
//实现查询学生信息功能
public static void queryStudent(ArrayList<Student> list) {
if (list.size() == 0) {
System.out.println("学生不存在");
return;
}
System.out.println("id\t\t\t姓名\t\t年龄\t\t专业");
for (int i = 0; i < list.size(); i++) {
Student stu = list.get(i);
System.out.println(stu.getId() + "\t" + stu.getName() + "\t\t" + stu.getAge() + "\t\t" + stu.getMajor());
}
}