利用JAVA知识,实现对职工信息的输出,请各位会的帮帮忙,谢谢啦!
Employee 类
public class Employee {
private int id;
private String name;
private char sex;
private double salary;
public Employee(int id, String name, char sex, double salary) {
this.id = id;
this.name = name;
this.sex = sex;
this.salary = salary;
}
public int getId() {
return this.id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public char getSex() {
return this.sex;
}
public void setSex(char sex) {
this.sex = sex;
}
public double getSalary() {
return this.salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
@Override
public String toString() {
return "Employee{" +
"id=" + id +
", name='" + name + '\'' +
", sex=" + sex +
", salary=" + salary +
'}';
}
}
主程序
import java.util.*;
public class Main {
public static void main(String[] args) {
// 定义3个Employee对象
Employee employee1 = new Employee(1, "Tom", 'M', 5000.0);
Employee employee2 = new Employee(2, "Jerry", 'M', 6000.0);
Employee employee3 = new Employee(3, "Lucy", 'F', 7000.0);
// 用Map存储Employee对象
Map<Integer, Employee> employeeMap = new HashMap<>();
employeeMap.put(employee1.getId(), employee1);
employeeMap.put(employee2.getId(), employee2);
employeeMap.put(employee3.getId(), employee3);
// 用List存储Employee对象
List<Employee> employeeList = new ArrayList<>();
employeeList.add(employee1);
employeeList.add(employee2);
employeeList.add(employee3);
// 用Set存储Employee对象
Set<Employee> employeeSet = new HashSet<>();
employeeSet.add(employee1);
employeeSet.add(employee2);
employeeSet.add(employee3);
// 增加员工
Employee employee4 = new Employee(4, "Kate", 'F', 8000.0);
employeeMap.put(employee4.getId(), employee4);
employeeList.add(employee4);
employeeSet.add(employee4);
// 删除员工
int deleteEmployeeId = 2;
employeeMap.remove(deleteEmployeeId);
employeeList.removeIf(e -> e.getId() == deleteEmployeeId);
employeeSet.removeIf(e -> e.getId() == deleteEmployeeId);
// 修改员工
int updateEmployeeId = 3;
Employee updatedEmployee = employeeMap.get(updateEmployeeId);
updatedEmployee.setName("Lily");
employeeList.stream()
.filter(e -> e.getId() == updateEmployeeId)
.findFirst()
.ifPresent(e -> e.setName("Lily"));
employeeSet.stream()
.filter(e -> e.getId() == updateEmployeeId)
.findFirst()
.ifPresent(e -> e.setName("Lily"));
// 查询员工
int queryEmployeeId = 1;
Employee queryEmployee = employeeMap.get(queryEmployeeId);
System.out.println("Query result of Map: " + queryEmployee);
employeeList.stream()
.filter(e -> e.getId() == queryEmployeeId)
.findFirst()
.ifPresent(e -> System.out.println("Query result of List: " + e));
employeeSet.stream()
.filter(e -> e.getId() == queryEmployeeId)
.findFirst()
.ifPresent(e -> System.out.println("Query result of Set: " + e));
}
}