学生管理系统的实现思路:
这是我的目录
学生类:Student
成员变量:
学号:sid
姓名:name
年龄:age
居住地:address
构造方法:
无参构造
带四个参数的构造
成员方法:
针对每个成员变量给出get/set方法
package com.company; public class Student { private String sid;//学号 private String name;//姓名 private String age;//年龄 private String address;//地址 //alt+insert快捷键 public Student() { } public Student(String sid, String name, String age, String address) { this.sid = sid; this.name = name; this.age = age; this.address = address; } public String getSid() { return sid; } public void setSid(String sid) { this.sid = sid; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } }
这是主界面的运行结果
1.用输出语句完成主界面的编写
2.用Scanner实现键盘录入数据
3.用switch语句完成操作
4.用循环完成再次回到主界面
第一步:主界面的编写
代码如下:
public class Main { public static void main(String[] args) { //创建集合对象,用于存储学生数据 ArrayList<Student> array=new ArrayList<Student>(); //用循环完成回到主界面 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实现键盘录入数据 Scanner sc = new Scanner(System.in); String line = sc.nextLine(); //用switch完成语句操作选择 switch (line) { case "1": // System.out.println("添加学生"); addStudent(array); break; case "2": // System.out.println("删除学生"); deleteStudent(array); break; case "3": // System.out.println("修改学生"); updateStudent(array); break; case "4": // System.out.println("查看所有学生"); findAllStudent(array); break; case "5": System.out.println("谢谢使用!!!!"); // break; System.exit(0);//JVM退出 } } }
第二步:完成对学生的添加,我们再Main中用addStudent()方法实现
代码如下
//定义一个方法,用于添加学生信息 public static void addStudent(ArrayList<Student> array){ //键盘录入学生所需数据,显示提示信息 Scanner sc=new Scanner(System.in); System.out.println("请输入学生学号:"); String sid=sc.nextLine(); System.out.println("请输入学生姓名:"); String name=sc.nextLine(); System.out.println("请输入学生年龄:"); String age=sc.nextLine(); System.out.println("请输入学生居住地:"); String address=sc.nextLine(); //创建学生对象,把键盘录入的数据赋值给学生对象的成员变量 Student s=new Student(); s.setSid(sid); s.setName(name); s.setAge(age); s.setAddress(address); //将学生对象添加到集合中 array.add(s); //给出成功提示 System.out.println("添加学生成功!!!"); }
第三步:完成对学生的查看,我们定义一个findAllStudent()方法
运行如图:
代码如下:
//定义一个方法,用于查看学生信息 public static void findAllStudent(ArrayList<Student> array){ //判断集合是否有数据,如果没有显示提示信息 if (array.size()== 0) { System.out.println("无信息,请添加信息再查询"); //为了让程序不在往下执行,给出return; return; } //显示表头信息 System.out.println("学号\t姓名\t年龄\t居住地" ); //将集合中的数据取出按照对应格式显示学生信息,年龄显示补充“岁” for (int i = 0; i < array.size() ; i++) { Student s= array.get(i); System.out.println(s.getSid()+"\t"+s.getName()+"\t"+s.getAge()+"岁\t"+s.getAddress()); } }
第四步:删除学生,代码如下
//定义一个方法,用于删除学生信息 public static void deleteStudent(ArrayList<Student> array){ //键盘录入要删除的学生学号,显示提示信息 Scanner sc=new Scanner(System.in); System.out.println("请输入你要删除的学生学号"); String sid=sc.nextLine(); //在删除/修改之前,对学号判断是否存在 //如果不存在,显示提示信息 //如果存在,执行删除修改操作 //遍历集合将对应学生从集合中删除 int index=-1; for (int i = 0; i < array.size() ; i++) { Student s= array.get(i); if (s.getSid().equals(sid) ) { index=i; break; } } if (index == -1) { System.out.println("该信息不存在,请重新输入"); }else{ array.remove(index); //给出删除成功提示 System.out.println("删除学生成功"); } }
这里对删除做了处理,如果没有该学生,则会提示
第五步,修改学生
代码如下:
//定义一个方法,用于修改学生信息 public static void updateStudent(ArrayList<Student> array) { //键盘录入要修改的学生学号,显示提示信息 Scanner sc = new Scanner(System.in); System.out.println("请输入要修改学生的学号:"); String sid = sc.nextLine(); //键盘录入要修改的信息 System.out.println("请输入学生新姓名:"); String name = sc.nextLine(); System.out.println("请输入学生新年龄:"); String age = sc.nextLine(); System.out.println("请输入学生新居住地:"); String address = sc.nextLine(); //创建学生对象 Student s = new Student(); s.setSid(sid); s.setName(name); s.setAge(age); s.setAddress(address); //遍历集合修改对应学生信息 int index=-1; for (int i = 0; i < array.size(); i++) { Student student = array.get(i); if (student.getSid().equals(sid)) { index=i; break; /* array.set(i, s); break;*/ } } if (index == -1) { System.out.println("该信息不存在"); }else { array.set(index,s); System.out.println("修改学生成功"); } } }
最后:我们只需要在main函数里面调用这些方法即可
代码如下:
public static void main(String[] args) { //创建集合对象,用于存储学生数据 ArrayList<Student> array=new ArrayList<Student>(); //用循环完成回到主界面 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实现键盘录入数据 Scanner sc = new Scanner(System.in); String line = sc.nextLine(); //用switch完成语句操作选择 switch (line) { case "1": // System.out.println("添加学生"); addStudent(array); break; case "2": // System.out.println("删除学生"); deleteStudent(array); break; case "3": // System.out.println("修改学生"); updateStudent(array); break; case "4": // System.out.println("查看所有学生"); findAllStudent(array); break; case "5": System.out.println("谢谢使用!!!!"); // break; System.exit(0);//JVM退出 } } }
这样就实现了简易的对一个学生管理系统的增删改查!!!直接运行就可以成功啦,这里没有用到数据库,也可以连接数据库。