dku*_*rni 34
您可以使用java.time.LocalDate来执行此操作.示例:如果您需要检查01/01/2005是否在该持续时间之间,您可以使用
LocalDate date = LocalDate.of(2005, 1, 1); // Assign date to check
LocalDate today = LocalDate.now();
if (date.isBefore(today.minusYears(10)) && date.isAfter(today.minusYears(20))) {
//Do Something
}
Run Code Online (Sandbox Code Playgroud)
Ram*_*h-X 20
使用Calendar您可以轻松获得当前日期的10年之日和20年之日.
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.YEAR, -10);
Date d1 = calendar.getTime();
calendar.add(Calendar.YEAR, -10);
Date d2 = calendar.getTime();
Run Code Online (Sandbox Code Playgroud)
在使用Java 8时,您也可以使用 LocalDate
LocalDate currentDate = LocalDate.now();
Date d1 = Date.from(currentDate.minusYears(10).atStartOfDay(ZoneId.systemDefault()).toInstant());
Date d2 = Date.from(currentDate.minusYears(20).atStartOfDay(ZoneId.systemDefault()).toInstant());
Run Code Online (Sandbox Code Playgroud)
为了比较,你可以使用date.after()和date.before()你说的方法.
if(date.after(d1) && date.before(d2)){ //date is the Date instance that wants to be compared
////
}
Run Code Online (Sandbox Code Playgroud)
该before()和after()方法在实施Calendar和LocalDate太.您可以在这些实例中使用这些方法,而无需转换为java.util.Date实例.
| 归档时间: |
|
| 查看次数: |
12767 次 |
| 最近记录: |