java 日期减一天_请问如何使用Java日历从日期中减去X天?

LocalDate.now().minusDays( 10 )

最好指定时区。LocalDate.now( ZoneId.of( "America/Montreal" ) ).minusDays( 10 )

细节

旧的日期时间类与早期版本的Java捆绑在一起,如java.util.Date/.Calendar已经被证明是麻烦的,混乱的,有缺陷的。避开他们。

java.time

Java 8和更高版本用新的java.time框架取代了这些旧类。看见补习..由JSR 310,灵感来自尤达-时间,并由三次-额外项目。Threeten-Backport项目将类移植到Java 6&7;将ThreeTenABP项目移植到Android。

这个问题含糊不清,不清楚是只要求约会,还是要求约会时间。

LocalDate

对于仅用于日期的,而不需要一天的时间,请使用LocalDate班级,等级。请注意,在确定日期(如“今天”)时,时区是至关重要的。LocalDate today = LocalDate.now( ZoneId.of( "America/Montreal" ) );LocalDate tenDaysAgo = today.minusDays( 10 );

ZonedDateTime

如果您指的是约会时间,请使用Instant类中获取时间线的时间。世界协调时..从那里,调整到一个时区,以获得一个ZonedDateTime对象。Instant now = Instant.now();  // UTC.ZoneId zoneId = ZoneId.of( "America/Montreal" );

ZonedDateTime zdt = ZonedDateTime.ofInstant( instant , zoneId );ZonedDateTime tenDaysAgo = zdt.minusDays( 10 );

关于java.time

若要了解更多信息,请参见Oracle教程..并搜索堆栈溢出的许多例子和解释。规格是JSR 310.

你们可以交换java.time对象直接使用数据库。用JDBC驱动程序符合JDBC 4.2或者晚些时候。不需要字符串,不需要字符串java.sql.*上课。

在哪里获得java.time类?JavaSE 8, JavaSE 9, JavaSE 10,后来内置的。

带有捆绑实现的标准JavaAPI的一部分。

Java 9添加了一些次要的特性和修复。

JavaSE 6和

JavaSE 7中的大部分java.time功能都被移植到Java 6&7中。

Threeten-Backport.

安卓Androidbundle实现的以后版本的java.time类。

对于早期的Android(<26),

ThreeTenABP项目适应

Threeten-Backport(上文所述)。看见

如何使用ThreeTenaBP….

这个三次-额外项目使用其他类扩展java.time。这个项目是java.time将来可能添加的一个试验场。您可能会在这里发现一些有用的类,例如Interval, YearWeek, YearQuarter,和更多.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值