diff --git "a/38 \351\273\204\346\255\243\347\204\225/20221220 \344\275\234\344\270\232.md" "b/38 \351\273\204\346\255\243\347\204\225/20221220 \344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..8eb6e5ca5b4196ae9eff227aab35394f9570661d --- /dev/null +++ "b/38 \351\273\204\346\255\243\347\204\225/20221220 \344\275\234\344\270\232.md" @@ -0,0 +1,129 @@ +## 作业 + +``` +package 学生管理系统; + +import java.util.Scanner; + +public class StudentManagerSystem { + //把扫描器放在最外层,这样里面所有的方法都能用,这个扫描器让所有公用 +// static 改为静态的让所有公用 + static Scanner sc = new Scanner(System.in); + public static void main(String[] args) { + //定义这个数组,存放学生信息 + String[] students = new String[10]; + //假设里面已经有一些学生信息了 + students[0]="1号"; + students[1]="2号"; + //添加从2开始,2这个索引,其实就是第一个null的位置 + + while (true){ + start(); + choiceMenu(sc.nextInt(),students); + } + + } + //1、登入界面 + public static void start(){ + System.out.println(); + System.out.println("==============================" + + "\n- 欢迎使用3班学生管理系统\t- " + + "\n- \t\t1.浏览所有学生信息 \t-" + + "\n- \t\t2.添加学生信息 \t\t-" + + "\n- \t\t3.修改学生信息 \t\t-" + + "\n- \t\t4.删除学生信息 \t\t-" + + "\n- \t\t5.查询学生信息 \t\t-" + + "\n- \t\t6.退出管理系统 \t\t-" + + "\n==============================\n" + + "\n 请输入对应的数字选择你需要的功能: "); + } + //2、根据输入的数字,进入不同的分支 + public static void choiceMenu(int num,String[] stu){ + switch (num){ + case 1: + //1、浏览所有学生信息 +// System.out.println("你选择了浏览所有学生"); + viwAllStudent(stu); + break; + case 2: + // 2.添加学生信息 + addStudent(stu); +// System.out.println("你选择了添加学生信息"); + break; + case 3: + //3.修改学生信息 + break; + case 4: + //4.删除学生信息 + break; + case 5: + // 5.查询单个学生信息 + break; + case 6: + // 6.退出管理系统 + break; + default: + System.out.println("不存在!"); + + } + } +// /3、浏览所有学生信息 + public static void viwAllStudent(String[] stu){ + System.out.println("一班现有以下学生:"); + for (String name : stu){ +// 第一种 + if (name ==null){ + continue;//跳过 + } + System.out.print(name+"\t"); +// 第二种 +// if (name !=null){ +// System.out.println(name+"\t"); +// } + } + } + + //4添加学生信息 + public static void addStudent(String[] stu ) { +//先找出没有人的位置,也就是第一个null的位置 +//然后将它成你要添加的姓名 + System.out.println("请输入你要添加的学生姓名:"); + String name =sc.next(); + //先判断是否已经有该学生了 + int index = searchIndex(stu,name); + if (index !=-1){ + System.out.println("该学生已经在数据库了,请不要重复添加"); + }else { + int nullindex = searchIndex(stu,null); + stu[nullindex] =name; + System.out.println("添加成功!"); + viwAllStudent(stu); + } + + } + //4.1把找位置的功能,独立出来,做成一个方法,返回找到的位置 + public static int searchIndex(String[] stu,String str) { + //定义一个索引变量 + int index = -1;//因为在数组里0表示第一个,改成-1,就表示不存在 + //null是特殊的类型,所以要单独判断 + if (str == null) { + for (int i = 0; i < stu.length; i++) { + if (stu[i] == null) { + index = i; + break; + }; + } + }else { + for (int i = 0; i < stu.length; i++) { + if (str.equals(stu[i])) { + index = i; + return index; + } + } + } + return index; + + } + + } +``` \ No newline at end of file