用java编译员工管理系统能实现增查改删功能用数组存储给每一步加备注
以下是一个简单的员工管理系统,使用Java语言编写,实现了增加、查找、修改和删除员工信息的功能。系统使用数组来存储所有员工信息,并使用控制台输入和输出来与用户交互。下面是每个步骤的详细说明:
- 定义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;
}
}
- 定义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");
}
}
}
}
- 创建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 著作权归作者所有。请勿转载和采集!