以下是一个简单的员工管理系统,使用Java语言编写,实现了增加、查找、修改和删除员工信息的功能。系统使用数组来存储所有员工信息,并使用控制台输入和输出来与用户交互。下面是每个步骤的详细说明:

  1. 定义Employee类

Employee类包含了员工的基本信息,如姓名、工号、职位和工资。每个Employee对象都有一个唯一的工号,这个工号是在对象创建时自动分配的。Employee类还包含了一些getter和setter方法,用于访问和修改员工信息。

public class Employee {
    private String name;
    private int id;
    private String position;
    private double salary;

    private static int nextId = 1;

    public Employee(String name, String position, double salary) {
        this.name = name;
        this.position = position;
        this.salary = salary;
        this.id = nextId;
        nextId++;
    }

    public String getName() {
        return name;
    }

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

    public int getId() {
        return id;
    }

    public String getPosition() {
        return position;
    }

    public void setPosition(String position) {
        this.position = position;
    }

    public double getSalary() {
        return salary;
    }

    public void setSalary(double salary) {
        this.salary = salary;
    }
}
  1. 定义EmployeeManagementSystem类

EmployeeManagementSystem类是整个程序的核心,它包含了所有的操作方法。在这个类中,我们定义了一个数组来存储所有的员工信息。当用户选择添加员工时,我们会新建一个Employee对象并将其加入到数组中。当用户选择查找、修改或删除员工时,我们会遍历数组,找到指定的员工并执行相应的操作。

import java.util.Scanner;

public class EmployeeManagementSystem {
    private Employee[] employees;
    private int count;

    public EmployeeManagementSystem(int capacity) {
        employees = new Employee[capacity];
        count = 0;
    }

    public void addEmployee() {
        Scanner scanner = new Scanner(System.in);

        System.out.print("Enter name: ");
        String name = scanner.nextLine();

        System.out.print("Enter position: ");
        String position = scanner.nextLine();

        System.out.print("Enter salary: ");
        double salary = scanner.nextDouble();

        Employee employee = new Employee(name, position, salary);
        employees[count] = employee;
        count++;

        System.out.println("Employee added: " + employee.getName());
    }

    public void findEmployee() {
        Scanner scanner = new Scanner(System.in);

        System.out.print("Enter id: ");
        int id = scanner.nextInt();

        for (Employee employee : employees) {
            if (employee != null && employee.getId() == id) {
                System.out.println("Employee found: " + employee.getName());
                return;
            }
        }

        System.out.println("Employee not found");
    }

    public void updateEmployee() {
        Scanner scanner = new Scanner(System.in);

        System.out.print("Enter id: ");
        int id = scanner.nextInt();

        for (Employee employee : employees) {
            if (employee != null && employee.getId() == id) {
                System.out.print("Enter name: ");
                String name = scanner.nextLine();

                System.out.print("Enter position: ");
                String position = scanner.nextLine();

                System.out.print("Enter salary: ");
                double salary = scanner.nextDouble();

                employee.setName(name);
                employee.setPosition(position);
                employee.setSalary(salary);

                System.out.println("Employee updated: " + employee.getName());
                return;
            }
        }

        System.out.println("Employee not found");
    }

    public void deleteEmployee() {
        Scanner scanner = new Scanner(System.in);

        System.out.print("Enter id: ");
        int id = scanner.nextInt();

        for (int i = 0; i < count; i++) {
            if (employees[i] != null && employees[i].getId() == id) {
                System.out.println("Employee deleted: " + employees[i].getName());

                employees[i] = null;
                count--;
                return;
            }
        }

        System.out.println("Employee not found");
    }

    public void printAllEmployees() {
        for (Employee employee : employees) {
            if (employee != null) {
                System.out.println(employee.getName() + " (" + employee.getPosition() + "): " + employee.getSalary());
            }
        }
    }

    public static void main(String[] args) {
        EmployeeManagementSystem system = new EmployeeManagementSystem(10);

        Scanner scanner = new Scanner(System.in);

        while (true) {
            System.out.println();
            System.out.println("1. Add employee");
            System.out.println("2. Find employee");
            System.out.println("3. Update employee");
            System.out.println("4. Delete employee");
            System.out.println("5. Print all employees");
            System.out.println("6. Quit");
            System.out.print("Enter your choice: ");

            int choice = scanner.nextInt();

            switch (choice) {
                case 1:
                    system.addEmployee();
                    break;
                case 2:
                    system.findEmployee();
                    break;
                case 3:
                    system.updateEmployee();
                    break;
                case 4:
                    system.deleteEmployee();
                    break;
                case 5:
                    system.printAllEmployees();
                    break;
                case 6:
                    System.exit(0);
                    break;
                default:
                    System.out.println("Invalid choice");
            }
        }
    }
}
  1. 创建EmployeeManagementSystem对象并运行程序

在main方法中,我们创建了一个EmployeeManagementSystem对象,并通过一个while循环不断地显示操作菜单并等待用户的输入。根据用户选择的操作,我们调用EmployeeManagementSystem类中相应的方法。当用户选择退出时,程序结束。

public static void main(String[] args) {
    EmployeeManagementSystem system = new EmployeeManagementSystem(10);

    Scanner scanner = new Scanner(System.in);

    while (true) {
        System.out.println();
        System.out.println("1. Add employee");
        System.out.println("2. Find employee");
        System.out.println("3. Update employee");
        System.out.println("4. Delete employee");
        System.out.println("5. Print all employees");
        System.out.println("6. Quit");
        System.out.print("Enter your choice: ");

        int choice = scanner.nextInt();

        switch (choice) {
            case 1:
                system.addEmployee();
                break;
            case 2:
                system.findEmployee();
                break;
            case 3:
                system.updateEmployee();
                break;
            case 4:
                system.deleteEmployee();
                break;
            case 5:
                system.printAllEmployees();
                break;
            case 6:
                System.exit(0);
                break;
            default:
                System.out.println("Invalid choice");
        }
    }
}
``

原文地址: https://www.cveoy.top/t/topic/f2N5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录