我想从Java日期中获取年,月,日等信息,以便与Java中的公历日期进行比较。这可能吗?

我在Java中有一个Date对象,它存储为Java的Date类型。

我也有一个公历创建日期。阳历日期没有参数,因此是今天日期(和时间?)的一个实例。

使用Java日期,我希望能够从Java日期类型中获取年,月,日,小时,分钟和秒,并比较gregoriancalendar日期。

我看到,目前Java日期存储为long,唯一可用的方法似乎只是将long写为格式化的日期字符串。是否可以访问年,月,日等?

我看到了getYear()getMonth()对等的方法Date类已被弃用。我想知道在日期中使用Java Date实例的最佳实践是什么GregorianCalendar

我的最终目标是进行日期计算,以便可以检查Java日期是否在今天的日期和时间的数小时,数分钟之内。

我仍然是Java的新手,对此感到有些困惑。


SMILET
浏览 768回答 3
3回答

MYYA

使用Java 8和更高版本,您可以将Date对象转换为LocalDate对象,然后轻松获取年,月和日。Date date = new Date();LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();int year  = localDate.getYear();int month = localDate.getMonthValue();int day   = localDate.getDayOfMonth();请注意,getMonthValue()返回从1到12的int值。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java