Java基础-基于List集合的简单员工管理系统

Java基础-基于List集合的简单员工管理系统

这里有对员工的查询功能,添加员工功能,修改员工信息功能,删除员工功能。
这里还利用面向对象的思想将每个模块和测试类分开,将员工集合也单独分离出来变成一个类利于维护。


1.创建员工实体类:

public class Emp {
    private String id; //员工编号
    private String name;//员工姓名
    private Integer age; //员工年龄
    private String sex; //员工性别

    public Emp(String id, String name, Integer age, String sex) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.sex = sex;
    }

    public Emp() {
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    @Override
    public String toString() {
        return "Emp{" +
                "id='" + id + '\'' +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", sex='" + sex + '\'' +
                '}';
    }
}

2.初始化员工集合

public class EmpList {
    public static List<Emp> initEmp(){
        ArrayList<Emp> emps = new ArrayList<Emp>();
        emps.add(new Emp("001","大龙",30,"男"));
        emps.add(new Emp("002","二龙",31,"男"));

        return emps;
    }
}

3.对员工操作的业务类:

public class EmpManage {
    private Scanner scanner=new Scanner(System.in);

    /*查询所有员工的方法*/
    public void selectEmp(List<Emp> emps){
        System.out.println("员工编号\t员工姓名\t员工性别\t员工年龄");
        for (Emp emp : emps) {
            System.out.println(emp.getId()+"\t"+emp.getName()+"\t"+emp.getSex()+"\t"+emp.getAge());
        }
    }

    /*添加员工方法*/
    public void addEmp(List<Emp> emps){
        System.out.print("请输入要添加的员工编号:");
        while (true){
            String id = scanner.next();
            Emp emp = findEmpById(emps, id);
            if(emp==null){
                System.out.print("输入添加员工的姓名:");
                String name = scanner.next();
                System.out.print("输入添加员工的性别:");
                String sex = scanner.next();
                System.out.print("输入添加员工的年龄:");
                int age = scanner.nextInt();
                emps.add(new Emp(id,name,age,sex));
                System.out.println("添加成功");
                break;
            }else{
                System.out.print("员工已经存在,重新输入员工编号:");
            }
        }
    }
    /*利用id查询员工方法*/
    public Emp findEmpById(List<Emp> emps,String id){
        for (Emp emp : emps) {
            if(emp.getId().equals(id)){
                return emp;
            }
        }
        return null;
    }

    /*修改员工*/
    public void upEmp(List<Emp> emps){
        System.out.print("输入需要修改的员工id:");
        while (true) {
            String id = scanner.next();
            Emp emp = findEmpById(emps, id);
            if(emp!=null){
                System.out.print("输入修改的姓名:");
                String name = scanner.next();
                System.out.print("输入修改的性别:");
                String sex = scanner.next();
                System.out.print("输入修改的年龄:");
                int age = scanner.nextInt();
                emp.setName(name);
                emp.setSex(sex);
                emp.setAge(age);
                System.out.println("修改成功!");
                break;
            }else{
                System.out.print("员工不存在,请重新输入员工编号:");
            }
        }
    }

    /*删除员工*/
    public void delEmp(List<Emp> emps){
        System.out.print("请输入需要删除的员工编号:");
        while (true){
            String id = scanner.next();
            Emp emp = findEmpById(emps,id);
            if(emp!=null){
                emps.remove(emp);
                break;
            }else{
                System.out.print("没有此员工,请重新输入员工编号:");
            }
        }
    }
}

4.测试类

public class Test {
    public static void main(String[] args) {
        EmpManage empManage = new EmpManage();
        List<Emp> emps = EmpList.initEmp();

        while (true){
            System.out.println("1,员工列表   2,新增员工  3,修改员工  4,删除员工  5.退出");

            System.out.print("请输入要选择的菜单对于的编号:");
            Scanner scanner = new Scanner(System.in);
            String choose = scanner.next();

            System.out.println("************");
            if(choose.equals("1")){
                empManage.selectEmp(emps);
            }else if(choose.equals("2")){
                empManage.addEmp(emps);
            }else if(choose.equals("3")){
                empManage.upEmp(emps);
            }else if(choose.equals("4")){
                empManage.delEmp(emps);
            }else{
            	System.out.println("退出系统,欢迎下次使用!");
                break;
            }
            System.out.println("************");
        }
    }
}

运行结果:

查询模块:在这里插入图片描述
添加模块:
在这里插入图片描述
修改员工信息

在这里插入图片描述
删除员工:
在这里插入图片描述
退出
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

记或往

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值