简易学生管理系统
此系统可实现学生信息的添加、删除、修改和查看。
运行效果如下所示:

实现代码如下所示:
1 package heima; 2 3 public class Student { 4 private String sid; //学号 5 private String name; //姓名 6 private String age; //年龄 7 private String address; //居住地 8 public String getSid() { 9 return sid; 10 } 11 public void setSid(String sid) { 12 this.sid = sid; 13 } 14 public String getName() { 15 return name; 16 } 17 public void setName(String name) { 18 this.name = name; 19 } 20 public String getAge() { 21 return age; 22 } 23 public void setAge(String age) { 24 this.age = age; 25 } 26 public String getAddress() { 27 return address; 28 } 29 public void setAddress(String address) { 30 this.address = address; 31 } 32 public Student() { 33 } 34 public Student(String sid, String name, String age, String address) { 35 this.sid = sid; 36 this.name = name; 37 this.age = age; 38 this.address = address; 39 } 40 41 }
1 package heima; 2 3 import java.util.ArrayList; 4 import java.util.Scanner; 5 /*学生管理系统*/ 6 public class StudentManager { 7 8 public static void main(String[] args) { 9 //创建集合对象,用于存储学生数据 10 ArrayList<Student> array=new ArrayList<Student>(); 11 12 //用循环完成再次回到主界面 13 while(true) { 14 System.out.println("--------欢迎来到学生管理系统--------"); 15 System.out.println("1添加学生"); 16 System.out.println("2删除学生"); 17 System.out.println("3修改学生"); 18 System.out.println("4查看所有学生"); 19 System.out.println("5退出"); 20 System.out.println("请输入你的选择:"); 21 22 Scanner sc=new Scanner(System.in); 23 String line=sc.nextLine(); 24 25 switch(line) { 26 case "1": 27 addStudent(array); 28 break; 29 case "2": 30 deleteStudent(array); 31 break; 32 case "3": 33 updataStudent(array); 34 break; 35 case "4": 36 findAIIStudent(array); 37 break; 38 case "5": 39 System.out.println("谢谢使用!"); 40 System.exit(0); 41 } 42 } 43 } 44 //定义一个方法,用于添加学生信息 45 public static void addStudent(ArrayList<Student> array) { 46 //键盘录入学生对象所需要的数据,显示提示信息,提示要输入何种信息 47 Scanner sc=new Scanner(System.in); 48 49 //为了让sid在while循环外面被访问到 50 String sid; 51 52 //为了让程序能够回到这里,我们使用循环实现 53 while(true) { 54 System.out.println("请输入学生学号:"); 55 sid=sc.nextLine(); 56 57 boolean flag=isUsed(array,sid); 58 if(flag) { 59 System.out.println("你输入的学号已经被使用,请重新输入"); 60 }else { 61 break; 62 } 63 } 64 65 System.out.println("请输入学生姓名:"); 66 String name=sc.nextLine(); 67 System.out.println("请输入学生年龄:"); 68 String age=sc.nextLine(); 69 System.out.println("请输入学生居住地:"); 70 String address=sc.nextLine(); 71 72 //创建学生对象,把键盘录入的数据赋值给学生对象的成员变量 73 Student s=new Student(); 74 s.setSid(sid); 75 s.setName(name); 76 s.setAge(age); 77 s.setAddress(address); 78 79 //将学生对象添加到集合中 80 array.add(s); 81 82 //给出添加成功提示 83 System.out.println("添加学生信息成功"); 84 } 85 //定义一个方法,判断学号是否被使用 86 public static boolean isUsed(ArrayList<Student> array,String sid) { 87 //如果与集合中的某一个学生学号相同,返回true,如果都不相同,返回false 88 for(int i=0;i<array.size();i++) { 89 Student s=array.get(i); 90 if(s.getSid().equals(sid)) { 91 return true; 92 } 93 } 94 return false; 95 } 96 //定义一个方法,用于查看学生信息 97 public static void findAIIStudent(ArrayList<Student> array) { 98 //判断集合中是否有数据,如果没有显示提示信息 99 if(array.size()==0) { 100 System.out.println("无信息,请先添加信息再查询"); 101 //为了让程序不在往下执行,给出return; 102 return; 103 } 104 105 //显示表头信息 106 System.out.println("学号\t姓名\t年龄\t居住地"); 107 108 //将集合中数据取出按照对应格式显示学生信息,年龄补充“岁” 109 for(int i=0;i<array.size();i++) { 110 Student s=array.get(i); 111 System.out.println(s.getSid()+"\t"+s.getName()+"\t"+s.getAge()+"岁\t"+s.getAddress()); 112 } 113 } 114 //定义一个方法,用于删除学生信息 115 public static void deleteStudent(ArrayList<Student> array) { 116 //键盘录入要删除的学生学号,显示提示信息 117 Scanner sc=new Scanner(System.in); 118 119 System.out.println("请输入你要删除的学生的学号:"); 120 String sid=sc.nextLine(); 121 122 //遍历集合将对应学生对象从集合中删除 123 int index=-1; 124 for(int i=0;i<array.size();i++) { 125 Student s=array.get(i); 126 if(s.getSid().equals(sid)) { 127 index=i; 128 break; 129 } 130 } 131 132 if(index==-1) { 133 System.out.println("该信息不存在,请重新输入"); 134 }else { 135 array.remove(index); 136 //给出删除成功提示 137 System.out.println("删除学生信息成功"); 138 } 139 } 140 //定义一个方法,用于修改学生信息 141 public static void updataStudent(ArrayList<Student> array) { 142 //键盘录入要修改的学生学号,显示提示信息 143 Scanner sc=new Scanner(System.in); 144 145 System.out.println("请输入你要修改的学生学号:"); 146 String sid=sc.nextLine(); 147 148 //遍历集合查看对应的学生信息是否存在 149 int index=-1; 150 for(int i=0;i<array.size();i++) { 151 Student s=array.get(i); 152 if(s.getSid().equals(sid)) { 153 index=i; 154 break; 155 } 156 } 157 if(index==-1) { 158 System.out.println("要修改的学生不存在"); 159 return; 160 } 161 162 //键盘录入要修改的学生信息 163 System.out.println("请输入学生新姓名:"); 164 String name=sc.nextLine(); 165 System.out.println("请输入学生新年龄:"); 166 String age=sc.nextLine(); 167 System.out.println("请输入学生新居住地:"); 168 String address=sc.nextLine(); 169 170 //创建学生对象 171 Student stu=new Student(); 172 stu.setSid(sid); 173 stu.setName(name); 174 stu.setAge(age); 175 stu.setAddress(address); 176 177 //修改对应的学生信息 178 array.set(index,stu); 179 180 //给出修改成功提示 181 System.out.println("修改学生信息成功"); 182 } 183 }

浙公网安备 33010602011771号