Java基础入门(完结篇)
1.简易的学生管理系统-集合版1.1 需求描述1.2 思路1.3 定义Student类1.4 编写主界面1.5 编写添加学生方法1.6 编写查询所有学员的方法1.7 编写修改学员的方法1.8 编写删除学生的方法
(资料图)
1.简易的学生管理系统-集合版
1.1 需求描述
实现一个简易的学生管理系统,包含主菜单,增加学生,修改学生,删除学生,查看所有学生和退出功能:
主菜单: 添加学生: 查询所有: 修改学生:
删除学生:
1.2 思路
1.定义实体类—Student类2.实现主菜单的循环显示3.实现添加方法4.实现查询方法5.实现修改方法6.实现删除方法
1.3 定义Student类
/* 1.定义一个Student学生类(属性:编号,姓名,年龄,性别) */public class Student {//编号 private int id; //姓名 private String name; //年龄 private int age; //性别 private String sex; public Student() {} public Student(int id, String name, int age, String sex) {this.id = id; this.name = name; this.age = age; this.sex = sex; } public int getId() {return id; } public void setId(int id) {this.id = id; } public String getName() {return name; } public void setName(String name) {this.name = name; } public int getAge() {return age; } public void setAge(int age) {this.age = age; } public String getSex() {return sex; } public void setSex(String sex) {this.sex = sex; }}
1.4 编写主界面
1.定义一个Student学生类(属性:编号,姓名,年龄,性别)2.定义一个存储Student对象的ArrayList集合3.定义一个Scanner对象4.定义一个死循环,让功能重复执行5.在死循环中打印功能菜单6.获取用户输入的功能选项7.根据用户输入的功能选项,选择对应的功能(switch语句)
public static void main(String[] args) {//2.定义一个存储Student对象的ArrayList集合 ArrayListlist = new ArrayList<>(); //3.定义一个Scanner对象 Scanner sc = new Scanner(System.in); //4.定义一个死循环,让功能重复执行 while (true){//5.在死循环中打印功能菜单 System.out.println("******************************************************"); System.out.println(" 欢迎使用学员管理系统 "); System.out.println("-------------------------------------------------------"); System.out.println("1.添加 2.修改 3.删除 4.查询所有 5.退出"); System.out.println("-------------------------------------------------------"); System.out.println("请选择您要执行的功能:"); //6.获取用户输入的功能选项 int choose = sc.nextInt(); //7.根据用户输入的功能选项,选择对应的功能(switch语句) switch (choose){case 1: //1.添加学员 addStudent(list,sc); break; case 2: //2.修改学员 updateStudent(list,sc); break; case 3: //3.删除学员 deleteStudent(list,sc); break; case 4: //4.查询所有学员 selectAllStudent(list); break; case 5: //5.退出 System.out.println("欢迎下次使用,再见!"); System.exit(0);//终止当前正在执行的java虚拟机 default: System.out.println("您输入的功能选项不存在,请重新输入!"); break; } } }
1.5 编写添加学生方法
1.获取用户输入的学员信息(姓名,年龄,性别)
2.判断集合的长度是否为0;
是0:则添加的学员为第一个,编号为1 不是0:获取最后一个学员的编号,把编号+1,作为新学员的编号
3.创建Student对象,封装学员信息
4.把Student对象添加到集合中
5.提示"【成功】数据已经被保存!"
方法的参数:
ArrayListlist:执行增删改查的集合对象 Scanner sc:获取用输入的数据(不用在每个方法中都创建一个Scanner对象)
public static void addStudent(ArrayListlist, Scanner sc) {System.out.println("---------------------------欢迎使用添加学员的方法----------------------------"); //1.获取用户输入的学员信息(姓名,年龄,性别) System.out.println("请输入学员的信息"); System.out.println("姓名:"); String name = sc.next(); System.out.println("年龄:"); int age = sc.nextInt(); System.out.println("性别:"); String sex = sc.next(); //2.判断集合的长度是否为0; int id; if(list.size()==0){//是0:则添加的学员为第一个,编号为1 id = 1; }else{//不是0:获取最后一个学员的编号,把编号+1,作为新学员的编号 id = list.get(list.size()-1).getId()+1; } //3.创建Student对象,封装学员信息 Student stu = new Student(id,name,age,sex); //4.把Student对象添加到集合中 list.add(stu); //5.提示"【成功】数据已经被保存!" System.out.println("【成功】数据已经被保存!");}
1.6 编写查询所有学员的方法
1.对集合的长度进行判断 长度是0:提示"【暂无学员信息,请添加后再尝试】" 长度不是0:遍历存储学员的ArrayList集合,获取每一个Student对象,打印Student对象的属性值
public static void selectAllStudent(ArrayListlist) {System.out.println("-------------------------欢迎使用查询所有学员的方法--------------------------"); //1.对集合的长度进行判断 if(list.size()==0){//长度是0:提示"【暂无学员信息,请添加后在尝试】" System.out.println("【暂无学员信息,请添加后在尝试】"); }else{//长度不是0:遍历存储学员的ArrayList集合,获取每一个Student对象,打印Student对象的属性值 System.out.println("编号\t姓名\t年龄\t性别"); for (int i = 0; i < list.size(); i++) {Student s = list.get(i); System.out.println(s.getId()+"\t\t"+s.getName()+"\t"+s.getAge()+"\t\t"+s.getSex()); } } System.out.println("------------------------------------------------------------------------------");}
1.7 编写修改学员的方法
1.获取用户输入的要修改的学员id2.遍历集合获取每一个学员Student对象3.使用用输入的id和遍历得到的id进行比较4.id相同,有要修改的学员,打印学员信息5.获取用输入的新的学员信息(姓名,年龄,性别[保留原值输入0])6.判断用户输入的是否为0,不是0,替换学员的信息7.提示用户【成功】数据已经被修改!8.结束修改学员的方法 return; (return后边什么都不写,作用就是结束方法)9.遍历结束了,还没有找到对应的学员,提示错误信息"【错误】id是"+id+“的学员没找到!”
public static void updateStudent(ArrayListlist, Scanner sc) {System.out.println("---------------------------欢迎使用修改学员的方法----------------------------"); //1.获取用户输入的要修改的学员id System.out.println("请输入要修改的学员id:"); int id = sc.nextInt(); //2.遍历集合获取每一个学员Student对象 for (int i = 0; i < list.size(); i++) {Student s = list.get(i); //3.使用用输入的id和遍历得到的id进行比较 if(id==s.getId()){//4.id相同,有要修改的学员,打印学员信息 System.out.println("您要修改的学员信息为:"); System.out.println(s.getId()+"\t\t"+s.getName()+"\t"+s.getAge()+"\t\t"+s.getSex()); //5.获取用输入的新的学员信息(姓名,年龄,性别[保留原值输入0]) System.out.println("请输入新的学员信息[保留原值输入0]:"); System.out.println("姓名:"); String name = sc.next(); System.out.println("年龄:"); int age = sc.nextInt(); System.out.println("性别:"); String sex = sc.next(); //6.判断用户输入的是否为0,不是0,替换学员的信息 if(!"0".equals(name)){s.setName(name); } if(age!=0){s.setAge(age); } if(!"0".equals(sex)){s.setSex(sex); } //7.提示用户【成功】数据已经被修改! System.out.println("【成功】数据已经被修改!"); //8.结束修改学员的方法 return; return; } } //9.遍历结束了,还没有找到对应的学员,提示错误信息"【错误】id是"+id+"的学员没找到!" System.out.println("【错误】id是"+id+"的学员没找到!");}
1.8 编写删除学生的方法
1.获取用户输入的要删除的学员id2.遍历集合获取每一个学员Student对象3.使用用输入的id和遍历得到的id进行比较4.id相同,有要删除的学员,打印学员信息5.输出"您确定要删除这条记录吗?(y|n)"6.获取用户输入的y或者n7.判断用户输入的是y:删除学员,提示"【成功】数据已经被删除" reutrn 用户输入的不是y: 提示:"【取消】操作被取消" 取消删除操作 return8.遍历结束了,还没有找到对应的学员,提示错误信息"【错误】id是"+id+“的学员没找到!”
private static void deleteStudent(ArrayListlist, Scanner sc) {System.out.println("---------------------------欢迎使用删除学员的方法----------------------------"); //1.获取用户输入的要删除的学员id System.out.println("请输入您要删除学员的id:"); int id = sc.nextInt(); //2.遍历集合获取每一个学员Student对象 for (int i = 0; i < list.size(); i++) {Student s = list.get(i); //3.使用用输入的id和遍历得到的id进行比较 if(id==s.getId()){//4.id相同,有要删除的学员,打印学员信息 System.out.println("您要删除的学员信息为:"); System.out.println(s.getId()+"\t\t"+s.getName()+"\t"+s.getAge()+"\t\t"+s.getSex()); //5.输出"您确定要删除这条记录吗?(y|n)" System.out.println("您确定要删除这条记录吗?(y|n)"); //6.获取用户输入的y或者n String yAndN = sc.next(); //7.判断用户输入的是y:删除学员,提示"【成功】数据已经被删除" reutrn if("y".equalsIgnoreCase(yAndN)){//list.remove(s);//根据对象删除 list.remove(i);//根据索引删除 System.out.println("【成功】数据已经被删除"); return;//结束方法 }else{//用户输入的不是y: 提示:"【取消】操作被取消" 取消删除操作 return System.out.println("【取消】操作被取消"); return;//结束方法 } } } //8.遍历结束了,还没有找到对应的学员,提示错误信息"【错误】id是"+id+"的学员没找到!" System.out.println("【错误】id是"+id+"的学员没找到!");}
至此简易的学生管理系统就做完了,Java初级入门的学习也告一段落。
希望整理的东西能对大家有所帮助,未来一起进步! 我们Java进阶再见!