Java 日期计算:判断员工职级是否需要复评
使用Java中的日期类和日期比较方法来实现这个需求。具体的代码如下:
import java.time.LocalDate;
public class Employee {
private String name;
private LocalDate gradeEffectiveDate;
public Employee(String name, LocalDate gradeEffectiveDate) {
this.name = name;
this.gradeEffectiveDate = gradeEffectiveDate;
}
public boolean needsReview(LocalDate currentDate, int reviewYears) {
LocalDate reviewDate = gradeEffectiveDate.plusYears(reviewYears);
return currentDate.isAfter(reviewDate) || currentDate.isEqual(reviewDate);
}
public static void main(String[] args) {
// 假设当前日期为2026-07-01
LocalDate currentDate = LocalDate.of(2026, 7, 1);
// 员工P3的生效日期为2022-10-01
Employee employee = new Employee("P3", LocalDate.of(2022, 10, 1));
// 进行职级评定
if (employee.needsReview(currentDate, 4)) {
System.out.println("需要参与复评");
} else {
System.out.println("不需要参与复评");
}
}
}
根据上述代码,我们假设当前日期为2026年7月1日,员工P3的生效日期为2022年10月1日。通过调用needsReview方法,传入当前日期和回顾时间(4年),判断是否需要参与复评。根据题目要求,不论上半年或是下半年进行评定,只要当前日期在回顾时间的范围内,就需要参与复评。在这个例子中,2026年7月1日在2022年10月1日的4年后,所以需要参与复评。输出结果为"需要参与复评"。
原文地址: https://www.cveoy.top/t/topic/qxPw 著作权归作者所有。请勿转载和采集!