学生管理系统JAVA

//student类
package Student_Management_System;

public class Student {
    private int id;
    private String name;
    private int age;
    private String homeAddress;

    public Student() {
    }

    public Student(int id, String name, int age, String homeAddress) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.homeAddress = homeAddress;
    }

    /**
     * 获取
     * @return id
     */
    public int getId() {
        return id;
    }

    /**
     * 设置
     * @param id
     */
    public void setId(int id) {
        this.id = id;
    }

    /**
     * 获取
     * @return name
     */
    public String getName() {
        return name;
    }

    /**
     * 设置
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取
     * @return age
     */
    public int getAge() {
        return age;
    }

    /**
     * 设置
     * @param age
     */
    public void setAge(int age) {
        this.age = age;
    }

    /**
     * 获取
     * @return homeAddress
     */
    public String getHomeAddress() {
        return homeAddress;
    }

    /**
     * 设置
     * @param homeAddress
     */
    public void setHomeAddress(String homeAddress) {
        this.homeAddress = homeAddress;
    }

    public String toString() {
        return "Student{id = " + id + ", name = " + name + ", age = " + age + ", homeAddress = " + homeAddress + "}";
    }
}


//主程序
package Student_Management_System;

import java.util.ArrayList;
import java.util.Scanner;

public class StudentTest {
    public static void main(String[] args) {
        boolean flag = true;
        ArrayList<Student> studentlist = new ArrayList<>();
        while (flag) {
            InterFace();
            Scanner sc = new Scanner(System.in);
            System.out.println("输入你要进行的操作序号:");
            int select = sc.nextInt();
            switch (select) {
                case 1:
                    System.out.println("----------添加学生信息----------");
                    Addstudent(studentlist);
                    //System.out.println("添加成功");
                    break;
                case 2:
                    System.out.println("----------删除学生信息----------");

                    delete(studentlist);
                    break;
                case 3:
                    System.out.println("----------修改学生信息----------");
                    revise(studentlist);
                    break;
                case 4:
                    System.out.println("----------查询学生信息----------");
                    Inquire(studentlist);
                    break;
                case 0:
                    flag = exit(flag);
                    break;
                default:
                    System.out.println("违法输入");
                    break;

            }

        }
    }

    //查询
    public static void Inquire(ArrayList<Student> studentlist) {
        Scanner sc=new Scanner(System.in);
        System.out.println("1、查询单个学生"+"\n"+"2、查询全部学生");
        int select=sc.nextInt();
        if(select==1){
            Student student=new Student();
            System.out.println("输入要查询的学生学号:");
            int ID=sc.nextInt();
            student.setId(ID);
            int i=sole(studentlist,student);
            if(i>=0){
                System.out.print("学号:       ");
                System.out.print("姓名:       ");
                System.out.print("年龄:       ");
                System.out.println("家庭住址:       ");
                System.out.print(studentlist.get(i).getId()+"       ");
                System.out.print(studentlist.get(i).getName()+"       ");
                System.out.print(studentlist.get(i).getAge()+"       ");
                System.out.println(studentlist.get(i).getHomeAddress()+"       ");
            } else{
                System.out.println("不存在该学生");
            }
        }else if(select==2){
            if(studentlist.size()==0){
                System.out.println("当前无学生信息,请添加后查询");
            }else{
                System.out.print("学号:       ");
                System.out.print("姓名:       ");
                System.out.print("年龄:       ");
                System.out.println("家庭住址:       ");
                for (int j = 0; j < studentlist.size(); j++) {
                    System.out.print(studentlist.get(j).getId()+"       ");
                    System.out.print(studentlist.get(j).getName()+"       ");
                    System.out.print(studentlist.get(j).getAge()+"       ");
                    System.out.println(studentlist.get(j).getHomeAddress()+"       ");
                }
            }
        }
        else{
            System.out.println("输入违法");
        }
    }
    //修改
    public static void revise(ArrayList<Student> studentlist) {
        Scanner sc=new Scanner(System.in);
        Student student=new Student();

        System.out.println("输入要修改的学生学号:");
        int ID=sc.nextInt();
        student.setId(ID);
        int i=sole(studentlist,student);
        if(i>=0){
            System.out.println("学号:");
            studentlist.get(i).setId(sc.nextInt());
            System.out.println("姓名:");
            studentlist.get(i).setName(sc.next());
            System.out.println("年龄:");
            studentlist.get(i).setAge(sc.nextInt());
            System.out.println("家庭住址:");
            studentlist.get(i).setHomeAddress(sc.next());
            System.out.println("修改成功");
        } else{
            System.out.println("id不存在");
        }


    }
    //退出
    public static boolean exit(boolean flag) {
        System.out.println("欢迎下次使用,请给个好评");
        flag = false;
        return flag;
    }

    //删除
    public static void delete(ArrayList<Student> studentlist) {
        Scanner sc = new Scanner(System.in);
        Student student =new Student();
        System.out.println("输入要删除学生的id:");
        student.setId(sc.nextInt());
        if(sole(studentlist,student)>=0){
            studentlist.remove(sole(studentlist, student));
            System.out.println("删除成功");
        } else{
            System.out.println("id不存在");
        }

    }

    //判定ID是否存在。存在返回i,不存在返回-1
    public static int sole(ArrayList<Student> studentlist, Student student) {
        for (int i = 0; i < studentlist.size(); i++) {
            if (student.getId() == studentlist.get(i).getId()) {
                //System.out.println("输入的学号已经存在,请重新输入");
                return i;
            }
        }
        return -1;

    }

    //添加学生
    public static void Addstudent(ArrayList<Student> studentlist) {
        Student student = new Student();
        Scanner sc = new Scanner(System.in);
        boolean flag = true;
        while (flag) {
            System.out.println("输入学生学号:(如果退出请按0000");
            int num = sc.nextInt();

            if (num == 0000) {
                System.out.println("是否确认退出添加学生信息功能(Y|N)");
                String select = sc.next();
                if (select.equals("y") || select.equals("y")) {
                    break;
                }
            }
            System.out.println("输入学生学号:");
            student.setId(sc.nextInt());
            if (sole(studentlist, student)<0) {
                System.out.println("输入学生姓名:");
                student.setName(sc.next());
                System.out.println("输入学生年龄:");
                student.setAge(sc.nextInt());
                System.out.println("输入学生家庭住址:");
                student.setHomeAddress(sc.next());
                studentlist.add(student);
                flag = false;
                System.out.println("添加成功");
            } else {
                System.out.print("输入的学号已经存在,请重新");
            }
        }

    }


    //主页面
    public static void InterFace() {
        System.out.println("---------------------欢迎进入学生管理系统--------------------");
        System.out.println("1、添加学生信息");
        System.out.println("2、删除学生信息");
        System.out.println("3、修改学生信息");
        System.out.println("4、查询学生信息");
        System.out.println("0、退出系统");

    }
}

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值