这篇文章给大家分享的是有关Java怎么实现学生管理系统的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
我们前面写了通讯录管理系统,现在我们来写个学生管理系统,
其实主干代码都一 不过,在学生管理系统中我添加和优化了许多功能,
如【登录密码验证,异常处理,非空判断,,防止重复添加】等。
增加学生信息
删除学生信息
修改学生信息
查找学生信息
查看所有学生信息
退出学生管理系统
主干总览图:
我们分成了许多的方法模块,便于调用。
就是普通的构造方法和get和set方法,还有一个重写的toString方法
(Alt+Insert可以快速生成上述的所有)
package 学生管理系统; public class Student { private String name; private String age; private String sex; private String number; private String classroom; public Student(){} public Student(String name, String age, String sex, String classroom,String number) { this.name = name; this.age = age; this.sex = sex; this.classroom = classroom; this.number=number; } 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 getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getClassroom() { return classroom; } public void setClassroom(String classroom) { this.classroom = classroom; } public String getNumber() { return number; } public void setNumber(String number) { this.number = number; }
重写toString方法是为了让我们设置好的方式去显示:
@Override public String toString() { return "名字:"+name+" |性别:"+sex+" |年龄:"+age+" |学号:"+number+" |班级:"+classroom+"\n"; } }
public static void main(String[] args) { ArrayList<Student> arrayList=new ArrayList<Student>(); password();//密码验证 while(true){ menu();//菜单 Scanner sc=new Scanner(System.in); try{ int num=sc.nextInt(); switch(num){ case 1:{ addStudent(arrayList);break; } case 2:{ deleteStudent(arrayList);break; } case 3:{ reviseStudent(arrayList);break; } case 4:{ oneStudent(arrayList);break; } case 5:{ checkStudent(arrayList);break; } case 6:{ System.out.println("退出成功"); System.exit(0); } default:{ System.out.println("输入错误,输入0-6之间的数字");break; } }} catch(Exception e){ e.printStackTrace(); System.out.println("你的输入是非数字,请输入0-6的数字"); } } }//main方法
public static void password(){ System.out.println("***欢迎来到学生管理系统***"); Scanner sc=new Scanner(System.in); System.out.print("请输入管理员密码:"); String s="键盘敲烂"; int sum=3; while(true){ String ss=sc.nextLine(); if(ss.equals(s)){ System.out.println("验证成功!");break; }else{sum--; System.out.print("密码错误,你还有"+sum+"次机会:"); } if(sum==0){ System.out.println("输入上限,再见!"); System.exit(0); } }}//密码验证
public static void menu(){ 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("请选择:"); }//打印菜单页
public static void addStudent(ArrayList<Student> arrayList){ Scanner sc1=new Scanner(System.in); System.out.print("请输入姓名:"); String name=sc1.nextLine(); System.out.print("请输入年龄:"); String age=sc1.nextLine(); System.out.print("请输入性别:"); String sex=sc1.nextLine(); System.out.print("请输入学号:"); String number=sc1.nextLine(); System.out.print("请输入班级:"); String classroom=sc1.nextLine(); Student stu=new Student(); stu.setAge(age); stu.setClassroom(classroom); stu.setName(name); stu.setSex(sex); stu.setNumber(number); int kong=0;//用来定义是否已经存在的学号 for (int i=0;i<arrayList.size();i++){ Student s=arrayList.get(i); if((arrayList.size())>1&&(s.getNumber().equals(number))&&(s.getClassroom().equals(classroom))){ System.out.println("添加失败,你输入的学号在同一班级已存在");kong++;//存在就加一 arrayList.remove(stu); } } if(name.length()==0||age.length()==0||sex.length()==0||classroom.length()==0||number.length()==0||kong!=0){ System.out.println("有某项为空或学号在同一班已存在,添加失败"); arrayList.remove(stu);//移除该项 } else{ arrayList.add(stu); System.out.println("添加成功");} }//加信息
public static void checkStudent(ArrayList<Student> array){ if(array.isEmpty()){ System.out.println("这里没有任何信息,请添加后查看!"); }else{ System.out.println(array);} }//查信息
public static void deleteStudent(ArrayList<Student> array){ if(array.isEmpty()){ System.out.println("这里没有任何信息,请添加后在进行操作!"); }else{ Scanner sc=new Scanner(System.in); System.out.println("请输入你要删除信息的名字"); String str=sc.nextLine(); int sum=0; for(int i=0;i<array.size();i++){ Student s = array.get(i); if(s.getName().equals(str)){ array.remove(i);sum++; System.out.println("删除成功"); } }if(sum==0){ System.out.println("没有该信息,删除失败!"); } } }//删信息
public static void reviseStudent(ArrayList<Student> arrayList){ if(arrayList.isEmpty()){ System.out.println("没有任何信息,请输入后在进行操作!"); }else { int sum=0; Scanner sc = new Scanner(System.in); System.out.println("请输入你要换信息的名字"); String name=sc.nextLine(); for(int i=0;i<arrayList.size();i++){ Student s1=arrayList.get(i); if(s1.getName().equals(name)){ sum++; } } if(sum!=0){ Scanner sc1=new Scanner(System.in); System.out.print("请输入姓名:"); String name1=sc1.nextLine(); System.out.print("请输入年龄:"); String age=sc1.nextLine(); System.out.print("请输入性别:"); String sex=sc1.nextLine(); System.out.print("请输入学号:"); String number=sc1.nextLine(); System.out.print("请输入班级:"); String classroom=sc1.nextLine(); Student stu=new Student(); stu.setAge(age); stu.setClassroom(classroom); stu.setName(name1); stu.setSex(sex); stu.setNumber(number); for (int i = 0; i < arrayList.size(); i++) { Student stu1 = arrayList.get(i); if (stu1.getName().equals(name)) { arrayList.set(i, stu); System.out.println("修改成功");break; } }}if(sum==0){ System.out.println("修改失败,没有找到对应的名字"); } } }//改信息
public static void oneStudent(ArrayList<Student> arrayList){ if (arrayList.isEmpty()){ System.out.println("没有学生信息,请添加后再查找"); }else{ Scanner sc=new Scanner(System.in); System.out.print("请输入你要查找学生的名字:"); String name=sc.nextLine(); int sum=0; for(int i=0;i<arrayList.size();i++){ Student stu=arrayList.get(i); if(stu.getName().equals(name)){sum++; System.out.println("姓名:"+stu.getName()+" 年龄:"+stu.getAge()+" 性 别:"+stu.getSex()+" 班级:"+stu.getClassroom()+" 学号:"+stu.getNumber()); } }if(sum==0){ System.out.println("你查找的学生不存在"); } } }//找信息
感谢各位的阅读!关于“Java怎么实现学生管理系统”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。