编写一个Java程序,制作一个公司职员薪水管理系统,要求有以下功能:当有新员工时,将该员工加入到管理系统;,根据该员工的工号显示该员工信息;可以显示所有员工的信息;可以修改员工薪水;当员工离职时,将该员
时间: 2024-05-13 07:17:11 浏览: 61
Java 员工工资管理系统
5星 · 资源好评率100%
工从管理系统中删除。
以下是一个简单的实现:
```java
import java.util.ArrayList;
import java.util.Scanner;
public class StaffSalaryManagementSystem {
// 定义员工类
static class Staff {
int id; // 工号
String name; // 姓名
double salary; // 薪水
public Staff(int id, String name, double salary) {
this.id = id;
this.name = name;
this.salary = salary;
}
public String toString() {
return "工号:" + id + ",姓名:" + name + ",薪水:" + salary;
}
}
static ArrayList<Staff> staffList = new ArrayList<>();
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
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("6. 退出");
int choice = scanner.nextInt();
switch (choice) {
case 1:
addStaff(scanner);
break;
case 2:
displayStaff(scanner);
break;
case 3:
displayAllStaffs();
break;
case 4:
modifySalary(scanner);
break;
case 5:
removeStaff(scanner);
break;
case 6:
System.out.println("谢谢使用!");
return;
default:
System.out.println("无效操作,请重新选择!");
}
}
}
// 新增员工
static void addStaff(Scanner scanner) {
System.out.println("请输入员工工号:");
int id = scanner.nextInt();
System.out.println("请输入员工姓名:");
String name = scanner.next();
System.out.println("请输入员工薪水:");
double salary = scanner.nextDouble();
Staff staff = new Staff(id, name, salary);
staffList.add(staff);
System.out.println("新增员工成功!");
}
// 显示员工信息
static void displayStaff(Scanner scanner) {
System.out.println("请输入员工工号:");
int id = scanner.nextInt();
for (Staff staff : staffList) {
if (staff.id == id) {
System.out.println(staff);
return;
}
}
System.out.println("未找到该员工!");
}
// 显示所有员工信息
static void displayAllStaffs() {
if (staffList.isEmpty()) {
System.out.println("暂无员工信息!");
} else {
for (Staff staff : staffList) {
System.out.println(staff);
}
}
}
// 修改员工薪水
static void modifySalary(Scanner scanner) {
System.out.println("请输入员工工号:");
int id = scanner.nextInt();
for (Staff staff : staffList) {
if (staff.id == id) {
System.out.println("请输入员工新薪水:");
double salary = scanner.nextDouble();
staff.salary = salary;
System.out.println("修改成功!");
return;
}
}
System.out.println("未找到该员工!");
}
// 删除员工
static void removeStaff(Scanner scanner) {
System.out.println("请输入员工工号:");
int id = scanner.nextInt();
for (Staff staff : staffList) {
if (staff.id == id) {
staffList.remove(staff);
System.out.println("删除成功!");
return;
}
}
System.out.println("未找到该员工!");
}
}
```
这个程序使用了一个内部类 `Staff` 表示员工,使用了一个 `ArrayList` 存储所有员工信息。具体实现包括了新增员工、显示员工信息、显示所有员工信息、修改员工薪水和删除员工等功能。
阅读全文