- 简述
在Java中,可以使用Date类或者LocalDate类来实现对时间的操作。对于判断今天、昨天、前天等并且不能使用秒间隔的情况,可以使用LocalDate类的minusDays方法和equals方法来实现。
- 示例1
import java.time.LocalDate;
public class TestDate {
public static void main(String[] args) {
LocalDate today = LocalDate.now();
LocalDate yesterday = today.minusDays(1);
LocalDate beforeYesterday = today.minusDays(2);
LocalDate otherDay = LocalDate.of(2021, 7, 13);
System.out.println("今天是:" + today);
System.out.println("昨天是:" + yesterday);
System.out.println("前天是:" + beforeYesterday);
System.out.println("其他日期是:" + otherDay);
System.out.println(today.equals(otherDay)); // false
System.out.println(yesterday.equals(otherDay)); // false
System.out.println(beforeYesterday.equals(otherDay)); // true
}
}
运行结果为:
今天是:2021-07-15
昨天是:2021-07-14
前天是:2021-07-13
其他日期是:2021-07-13
false
false
true
在上面的示例中,我们首先获取了当前的日期 LocalDate.now(),然后分别使用minusDays方法来获取昨天和前天的日期,同时也设置了一个其他的日期(2021年7月13日)。接着,使用equals方法来比较这些日期是否与其他日期相同。可以看到,对于前天这个日期,使用equals和其他日期相等。
- 示例2
还是使用前面的今天、昨天、前天的日期,以及与它们相差一周的日期:
import java.time.LocalDate;
public class TestDate {
public static void main(String[] args) {
LocalDate today = LocalDate.now();
LocalDate yesterday = today.minusDays(1);
LocalDate beforeYesterday = today.minusDays(2);
LocalDate oneWeekAgo = today.minusWeeks(1);
System.out.println("今天是:" + today);
System.out.println("昨天是:" + yesterday);
System.out.println("前天是:" + beforeYesterday);
System.out.println("一周前是:" + oneWeekAgo);
System.out.println(today.isAfter(oneWeekAgo)); // true
System.out.println(yesterday.isAfter(oneWeekAgo)); // true
System.out.println(beforeYesterday.isAfter(oneWeekAgo)); // true
}
}
运行结果为:
今天是:2021-07-15
昨天是:2021-07-14
前天是:2021-07-13
一周前是:2021-07-08
true
true
true
在这个示例中,我们使用了LocalDate的minusWeeks方法来获取一个日期和今天相差一周的日期。然后使用isAfter方法比较今天、昨天、前天这些日期是否在一周前这个日期之后。可以看到,它们都是在一周前这个日期之后的,因此输出了true。
- 总结
判断今天、昨天、前天等需要先获取当前的日期,然后再使用minusDays等方法获取相关的日期,最后使用equals、isAfter等方法进行比较。在实际开发中,也可以根据具体业务场景使用不同的日期类和方法。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java判断今天,昨天,前天,不能用秒间隔的简单实例 - Python技术站