用java写员工管理系统 员工属性:员工编号、员工姓名、性别、年龄、所在部门 1————员工添加 2————员工删除 3————员工信息修改 4————根据员工编号查询员工信息 5————查询所有员工信息 用Set存储 要求:员工编号不允许重复,即员工编号重复就算是员工信息重复
时间: 2023-07-29 16:14:45 浏览: 49
好的,我明白了。这是一个比较基础的员工管理系统,可以使用Java语言和Set集合来实现。以下是简单的代码示例:
首先,定义一个员工类,包含员工编号、员工姓名、性别、年龄、所在部门等属性:
```java
public class Employee {
private String empNo; // 员工编号
private String name; // 员工姓名
private String gender; // 员工性别
private int age; // 员工年龄
private String department; // 所在部门
// 构造方法
public Employee(String empNo, String name, String gender, int age, String department) {
this.empNo = empNo;
this.name = name;
this.gender = gender;
this.age = age;
this.department = department;
}
// getter和setter方法
public String getEmpNo() {
return empNo;
}
public void setEmpNo(String empNo) {
this.empNo = empNo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getDepartment() {
return department;
}
public void setDepartment(String department) {
this.department = department;
}
// 重写hashCode和equals方法
@Override
public int hashCode() {
return this.empNo.hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (obj == this) {
return true;
}
if (!(obj instanceof Employee)) {
return false;
}
Employee emp = (Employee) obj;
return this.empNo.equals(emp.getEmpNo());
}
}
```
然后,定义一个员工管理类,包含员工添加、员工删除、员工信息修改、根据员工编号查询员工信息、查询所有员工信息等方法:
```java
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class EmployeeManager {
private Set<Employee> employees; // 员工集合
// 构造方法
public EmployeeManager() {
employees = new HashSet<Employee>();
}
// 员工添加
public boolean addEmployee(Employee emp) {
return employees.add(emp);
}
// 员工删除
public boolean removeEmployee(String empNo) {
Iterator<Employee> it = employees.iterator();
while (it.hasNext()) {
Employee emp = it.next();
if (emp.getEmpNo().equals(empNo)) {
it.remove();
return true;
}
}
return false;
}
// 员工信息修改
public boolean updateEmployee(Employee emp) {
boolean flag = false;
Iterator<Employee> it = employees.iterator();
while (it.hasNext()) {
Employee e = it.next();
if (e.getEmpNo().equals(emp.getEmpNo())) {
it.remove();
flag = employees.add(emp);
break;
}
}
return flag;
}
// 根据员工编号查询员工信息
public Employee findEmployee(String empNo) {
for (Employee emp : employees) {
if (emp.getEmpNo().equals(empNo)) {
return emp;
}
}
return null;
}
// 查询所有员工信息
public Set<Employee> findAllEmployees() {
return employees;
}
}
```
注意,在上面的代码中,我们重写了Employee类的hashCode和equals方法,以保证员工编号不重复。此外,我们使用了Set集合来存储员工信息,因为Set集合不允许重复元素。
以上是一个简单的员工管理系统的代码示例,你可以根据实际需要进行修改和完善。