不爱生姜不吃醋⭐️⭐️⭐️
声明:
🌻本文写的是Java基础项目——学籍管理系统 ❗️
🌻看完之后觉得不错的话麻烦动动小手点个赞赞吧👍
🌻如果本文有什么错误的话欢迎在评论区中指正哦💗
🌻与其明天开始,不如现在行动!💪
🌻大家的支持就是我最大的动力!冲啊!🌹🌹🌹
🌸 Java基础案例 | 第一弹博文
🌸 Java基础案例 | 第二弹博文

文章目录
- 🌴前言
 - 🌴一、学籍管理系统功能介绍
 - 
- 1.介绍
 - 2.学籍管理系统的主要功能图示
 - 3.代码编写的思路
 
 - 🌴二、定义学生类
 - 
- 1. 学生类名称:Student
 - 2. 包含的成员变量
 - 3.构造方法
 - 4.成员方法
 - 5.代码示例
 
 - 🌴三.主界面的代码编写
 - 
- 1.思路
 - 2.代码示例
 
 - 🌴四、系统功能方法的实现
 - 
- 1.添加学生信息的代码编写
 - 
- 1.1 思路
 - 1.2 添加学生信息的方法说明图
 - 1.3 代码示例
 
 - 2.查看学生信息的代码编写
 - 
- 2.1 思路
 - 2.2 查看学生信息的方法说明图
 - 2.3 代码示例
 
 - 3.删除学生信息的代码编写
 - 
- 3.1 思路
 - 3.2 删除学生信息的方法说明图
 - 3.3 代码示例
 
 - 4.修改学生的代码编写
 - 
- 4.1 思路
 - 4.2 修改学生信息的方法说明图
 - 4.3 代码示例
 
 - 5.学号重复问题
 - 
- 5.1 思路
 - 5.2 学号被占用的方法说明图
 - 5.3 代码示例
 - 5.4 代码示例
 
 
 - 🌴总结
 
🌴前言
学籍管理系统是一个教育单位不可缺少的部分,它的内容对于学校的领导人和管理者来说都至关重要,有助于提高整个学校的教育水平和管理水平,减少人力资源的浪费,适应大量的学生信息变更。
 本文所写的学籍管理系统实现了学籍管理系统的主要功能,大家的小学期程序设计能用到的话,可以参考一下哦!当然啦,也可以在此基础上不断完善!
🌴一、学籍管理系统功能介绍
1.介绍
学籍管理系统首先有外部的主界面展示功能,进入主界面后可以选择想要的操作,如添加学生信息、修改学生信息、查找学生信息、删除学生信息、查看学生信息和退出系统操作。
2.学籍管理系统的主要功能图示

3.代码编写的思路
1.1 定义学生类
 1.2 主界面的代码编写
 1.3 添加学生的代码编写
 1.4 查看学生的代码编写
 1.5 删除学生的代码编写
 1.6 修改学生的代码编写
🌴二、定义学生类
1. 学生类名称:Student
2. 包含的成员变量
学号:num
 姓名:name
 年龄:age
 地址:address
3.构造方法
无参构造
 带四个参数的构造
4.成员方法
每个成员变量给出对应的get/set方法
5.代码示例
public class Student {
//不爱生姜不吃醋
    private String num;//学生学号
    private String name;//学生姓名
    private String age;//学生年龄
    private String address;//学生地址
    public Student() {
    }//无参构造
    public Student(String num, String name, String age, String address) {
        this.num = num;
        this.name = name;
        this.age = age;
        this.address = address;
    }//带四个参数的构造
    public String getNum() {
        return num;
    }
    public void setNum(String num) {
        this.num = num;
    }
    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.思路
- 新建一个主类(Studentdemo)
 - 用输出语句完成主界面的编写
 - 用 
Scanner实现键盘录入数据 - 用 
switch语句完成操作的选择 - 用循环完成再次回到主界面
 - 循环之中包含添加、查找、删除、修改的方法
 
2.代码示例
主类:主界面的编写
public class Studentdemo {
    public static void main(String[] args){
    //不爱生姜不吃醋
        ArrayList<Student> array=new ArrayList<>();
        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 sc = new Scanner(System.in);
            String line = sc.nextLine();
            switch (line) {
                case "1":
                   //**此处调用“添加学生方法”**
                    break;
                case "2":
                    //**此处调用“删除学生方法”**
                    break;
                case "3":
                    //**此处调用“修改学生方法”**
                    break;
                case "4":
                    //**此处调用“查找学生方法”**
                    break;
                case "5":
                    System.out.println("谢谢使用!");
                    System.exit(0);
            }
        }
    }
}
🌴四、系统功能方法的实现
1.添加学生信息的代码编写
1.1 思路
- 键盘录入选择添加学生;
 - 定义一个方法用于添加学生;
- 显示提示信息
 - 键盘录入学生对象信息所需要的数据
 - 创建学生对象,将录入的数据赋值给学生对象的成员变量
 - 将学生对象添加到集合中
 - 给出添加成功提示
 
 - 调用方法
 
1.2 添加学生信息的方法说明图

1.3 代码示例
添加学生方法
    public static void Addstudent(ArrayList<Student> array){
    //不爱生姜不吃醋
        // 定义一个方法用于添加学生;
        Scanner sc=new Scanner(System.in);
        System.out.print("请输入学生学号:");
        String num=sc.nextLine();
        System.out.print("请输入学生姓名:");
        String name=sc.nextLine();
        System.out.print("请输入学生年龄:");
        String age=sc.nextLine();
        System.out.print("请输入学生地址:");
        String address=sc.nextLine();
        //创建学生对象,将键盘录入的数据赋值给学生对象的成员变量
        Student s=new Student();
        s.setNum(num);
        s.setName(name);
        s.setAge(age);
        s.setAddress(address);
        //将学生对象添加到集合中
        array.add(s);
        //给出添加成功提示
        System.out.println("添加学生成功!");
        }
添加学生方法代码写完后,注意要在main方法中调用:Addstudent(array);
2.查看学生信息的代码编写
2.1 思路
- 键盘录入选择查看所有学生信息;
 - 定义一个方法,用于查看学生信息;
- 显示表头信息
 - 将集合中数据取出按照对应格式显示学生信息
 
 - 调用方法。
 
2.2 查看学生信息的方法说明图

2.3 代码示例
查看学生方法
    // 定义一个方法,用于查看学生信息;
    public static void Findallstudent(ArrayList<Student> array){
        if(array.size()==0){
            System.out.println("无信息!");
            return;
        }
        // 显示表头信息
        // 将集合中数据取出按照对应格式显示学生信息
         for(int i=0;i<array.size();i++){
             Student s=array.get(i);
             System.out.println("学号:"+s.getNum());
             System.out.println("姓名:"+s.getName());
             System.out.println("年龄:"+s.getAge());
             System.out.println("地址:"+s.getAddress());
             System.out.println("  ");
         }
    }
查看学生方法代码写完后,注意要在main方法中调用:Findallstudent(array);
3.删除学生信息的代码编写
3.1 思路
- 键盘录入要删除的学生信息;
 - 定义一个方法,用于删除学生信息;
- 显示提示信息
 - 键盘录入要删除的学生学号
 - 遍历集合将对应学生对象从集合中删除
 - 给出删除成功提示
 
 - 调用方法
 
3.2 删除学生信息的方法说明图

3.3 代码示例
删除学生方法
  // 定义一个方法,用于删除学生信息;
    public static void Deletestudent(ArrayList<Student> array){
        // 键盘录入要删除的学生信息,显示提示信息
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要删除学生的学号:");
        String num=sc.nextLine();
        
        int index = -1;
        
        // 遍历集合将对应学生对象从集合中删除
        for(int i=0;i<array.size();i++){
            Student s=array.get(i);
            if(s.getNum().equals(num)){
                index = i;
                break;
            }
        }
        
        if(index == -1){
            System.out.println("学号有误!");
        }else{
            array.remove(index);
            System.out.println("删除学生信息成功!");
        }
    }
删除学生方法代码写完后,注意要在main方法中调用:Deletestudent(array);
4.修改学生的代码编写
4.1 思路
- 键盘录入选择修改的学生信息;
 - 定义一个方法,用于修改学生信息;
- 显示提示信息
 - 键盘录入要修改的学生学号
 - 遍历集合修改对应的学生信息
 - 给出修改成功提示
 
 - 调用方法
 
4.2 修改学生信息的方法说明图

4.3 代码示例
修改学生方法
    // 定义一个方法,用于修改学生信息;
    public static void Updatestudent(ArrayList<Student> array){
    //不爱生姜不吃醋
        // 键盘录入选择修改的学生信息,显示提示信息
        Scanner sc=new Scanner(System.in);
        System.out.print("请输入要修改的学生学号:");
        String num=sc.nextLine();
        
        // 键盘录入要修改的学生信息
        System.out.print("请输入修改后的学生姓名");
        String name=sc.nextLine();
        System.out.print("请输入修改后的学生年龄");
        String age=sc.nextLine();
        System.out.print("请输入修改后的学生地址");
        String address=sc.nextLine();
        
        //创建学生对象
        Student s=new Student();
        s.setNum(num);
        s.setName(name);
        s.setAge(age);
        s.setAddress(address);
        //遍历集合修改对应的学生信息
        for(int i=0;i<array.size();i++){
            Student student=array.get(i);
            if(student.getNum().equals(num)){
                array.set(i,s);
                break;
            }
        }
        //修改成功提示
        System.out.println("修改成功!");
    }
修改学生信息方法代码写完后,注意要在main方法中调用:Updatestudent(array);
5.学号重复问题
5.1 思路
- 定义一个方法,对学号是否被使用进行判断;
- 如果与集合中的某一个学生学号相同,返回true
 - 如果都不相同,返回false;
 
 - 在添加学生录入学号后调用该方法
- 如果返回true,提示重新输入学号
 - 如果返回false,正常添加学生对象
 
 
5.2 学号被占用的方法说明图

5.3 代码示例
判断学号是否被使用方法
     // 定义一个方法,对学号是否被使用进行判断;
    public static boolean Isused(ArrayList<Student> array,String num){
    //不爱生姜不吃醋
        // 如果与集合中的某一个学生学号相同,返回true
        // 如果都不相同,返回false;
        boolean flag =false;
        for(int i=0;i<array.size();i++){
            Student s=array.get(i);
            if(s.getNum().equals(num)){
                flag = true;
                break;
            }
        }
        return flag;
        // 在添加学生录入学号后调用该方法
        // 如果返回true,提示重新输入学号
        // 如果返回false,正常添加学生对象
    }
5.4 代码示例
改进后的 添加学生信息方法
     public static void Addstudent(ArrayList<Student> array){
        // 定义一个方法用于添加学生;
        Scanner sc=new Scanner(System.in);
        String num;
        //为了让程序回到这里,我们使用循环实现
        while(true){
            System.out.print("请输入学生学号:");
            num = sc.nextLine();
            boolean flag=Isused(array,num);
            if(flag){
                System.out.println("你输入的学号已经被使用,请重新输入:");
            }else{
                break;
            }
        }
        System.out.print("请输入学生姓名:");
        String name=sc.nextLine();
        System.out.print("请输入学生年龄:");
        String age=sc.nextLine();
        System.out.print("请输入学生地址:");
        String address=sc.nextLine();
        //创建学生对象,将键盘录入的数据赋值给学生对象的成员变量
        Student s=new Student();
        s.setNum(num);
        s.setName(name);
        s.setAge(age);
        s.setAddress(address);
        //将学生对象添加到集合中
        array.add(s);
        //给出添加成功提示
        System.out.println("添加学生成功!");
    }
两个方法代码写完后,注意要在main方法中调用:
 首先调用判断学号被使用方法:Isused(array);
 调用改进后的添加学生信息方法:Addstudent(array);
 (注意:如果之前有调用了标题4中的方法,应先删去后在调用改进后的添加学生信息方法!)
🌴总结
文章中代码的编写使用的都是Java基础知识,多加练习熟能生巧。
 本文中若是有出现的错误请在评论区或者私信指出,我再进行改正优化,如果文章对你有所帮助,请给博主一个宝贵的三连,感谢大家😘!!!
