- 1.1 学生管理系统实现思路
- 1.2 定义学生类
- 1.3 主界面的代码编写
- 1.4 添加学生的代码编写
- 1.5 查看学生的代码编写
- 1.6 查看学生的代码编写升级版
- 1.7 删除学生的代码编写
- 1.8 修改学生信息的代码编写
- 1.9 解决添加学生学号重复问题
- (1)定义学生类。
(2)主界面的代码编写。
(3)添加学生的代码编写。
(4)查看学生的代码编写。
(5)修改学生的代码编写。
(6)修改学生的代码编写。
- 学生类:Student
- 成员变量:
(1)学号:sid
(2)姓名:name
(3)年龄:age
(4)居住地:address - 构造方法:无参构造、带四个参数的构造
- 成员方法:每个成员变量对应给出get/set方法
Student.java
public class Student {
private String sid;
private String name;
private String age;
private String address;
public Student() {
}
public Student(String sid, String name, String age, String address) {
this.sid = sid;
this.name = name;
this.age = age;
this.address = address;
}
略get/set方法
1.3 主界面的代码编写
- 编写思路:
(1)用输出语句完成主界面的编写
(2)用Scanner实现键盘录入数据
(3)用switch语句完成操作的选择
(4)用循环完成在次回到主界面
- StudentManager类内main方法
public static void main(String[] args) {
ArrayList arrayList = new ArrayList<>();
for (;;){
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(arrayList);
break;
case "2":
deleteStudent(arrayList);
break;
case "3":
updateStudent(arrayList);
break;
case "4":
findAllStudent(arrayList);
break;
case "5":
System.out.println("感谢使用!");
System.exit(0);
default:break;
}
}
}
1.4 添加学生的代码编写
- 编写思路:
(1)用键盘录入选择添加学生。
(2)定义一个方法,用于添加学生:首先,显示提示信息,提示要输入何种信息;其次,键盘录入学生对象所需要的数据;再次,创建学生对象,把键盘录入的数据赋值给学生对象的成员变量;然后,将学生对象添加到集合中(保存);最后,给出添加成功的提示。
(3)调用方法。
public static void addStudent(ArrayList1.5 查看学生的代码编写array){ Scanner scanner = new Scanner(System.in); Student student = new Student(); System.out.println("请输入学生的学号:"); student.setSid(scanner.nextLine()); System.out.println("请输入学生的姓名:"); student.setName(scanner.nextLine()); System.out.println("请输入学生的年龄:"); student.setAge(scanner.nextLine()); System.out.println("请输入学生的家庭住址:"); student.setAddress(scanner.nextLine()); array.add(student); System.out.println("添加学生成功!"); }
- 编写思路:
(1)用键盘录入选择查看所有学生信息。
(2)定义一个方法,用于查看学生对象:首先显示表头信息;然后将集合中数据取出按照对应格式显示学生信息,年龄显示补充“岁”。
(3)调用方法。
public static void findAllStudent(ArrayListarray){ System.out.println("学号t姓名t年龄tt家庭住址"); for (int i=0; i 1.6 查看学生的代码编写升级版
- 编写思路:
(1)用键盘录入选择查看所有学生信息。
(2)定义一个方法,用于查看学生对象:首先判定集合中是否有数据,如果没有显示提示信息;然后显示表头信息;最后将集合中数据取出按照对应格式显示学生信息,年龄显示补充“岁”。
(3)调用方法。public static void findAllStudent(ArrayListarray){ if (array.size() == 0){ System.out.println("没有找到任何学生信息,请先添加学生信息!"); return; } System.out.println("学号t姓名t年龄tt家庭住址"); for (int i=0; i 1.7 删除学生的代码编写
- 编写思路:
(1)用键盘录入选择删除学生信息。
(2)定义一个方法,用于删除学生信息:首先,显示提示信息;其次,键盘录入要删除的学生学号;然后,遍历集合将对应学生对象从集合中删除。
(3)调用方法。public static void deleteStudent(ArrayListarray){ Scanner scanner = new Scanner(System.in); System.out.println("请输入要你所要删除学生信息对应的学号:"); String sid = scanner.nextLine(); for (int i=0; i 1.8 修改学生信息的代码编写
- 编写思路:
(1)用键盘录入选择修改学生信息。
(2)定义一个方法,用于修改学生信息:首先,显示提示信息;其次,键盘录入要修改的学生学号;再次,键盘录入要修改学生的学生信息;然后,遍历集合修改对应的学生信息;最后,给出修改成功的提示。
(3)调用方法。public static void updateStudent(ArrayListarray){ Scanner scanner = new Scanner(System.in); System.out.println("请输入您所要修改学生信息对应的学号:"); String sid = scanner.nextLine(); for (int i=0; i 1.9 解决添加学生学号重复问题
public static void addStudent(ArrayListarray){ Scanner scanner = new Scanner(System.in); Student student = new Student(); System.out.println("请输入学生的学号:"); boolean sidIsUse; do{ sidIsUse = false; student.setSid(scanner.nextLine()); for (int i=0; i 判断学号是否重复的方法中,sidIsUse这个变量有什么作用呢?我们假设没有这个变量,很显然就可以知道跳不出do{}while()这个死循环,而有了sidIsUse,就可以根据我们的需求,随时将其设定为可跳出循环的值。



