检查日期是否早于今天
大家好
我试着比较java中的两个日期,想知道其中一个日期是否在实际日期之前,但它也比较了时间,所以不管是同一天,它都说是在同一天之前,因为它会将它们与时间进行比较。有没有办法只知道日期是在当天之前,而不是时间之前
这是我使用的代码(日期来自时报
long timestampDate = 1623307684;
Date date = new Date((long)timestampDate*1000);
if(date.before(Calendar.getInstance().getTime()))
{
System.out.println("Was yesterday");
}
else
{
System.out.println("Is today");
}
谢谢你的时间
# 1 楼答案
java.util
日期时间API及其格式化APISimpleDateFormat
已经过时且容易出错。建议完全停止使用它们,并切换到2014年3月发布的modern Date-Time API*使用
java.time
现代日期时间API的解决方案:从Trail: Date Time了解有关现代日期时间API的更多信息
*无论出于何种原因,如果您必须坚持使用Java 6或Java 7,您可以使用ThreeTen-Backport来支持大部分Java。Java 6&;的时间功能;7.如果您正在为Android项目工作,并且您的Android API级别仍然不符合Java-8,请选中Java 8+ APIs available through desugaring和How to use ThreeTenABP in Android Project。