我如何获得 31 天前的日期?
How do I get the date of 31 days ago?
我怎样才能得到 x
,它应该比 current_date
早 31 天?
x(date)___________________________current_date
31
只需减去 31 天。例如:
LocalDate current = new LocalDate(2015, 6, 19);
LocalDate x = current.minusDays(31); // 2015-05-19
要获取当前日期,您可以使用:
LocalDate current = new LocalDate(); // Default time zone
或
LocalDate current = new LocalDate(zone); // Some specific zone
或者您可能想要创建自己的 "clock" 表示,它能够为您提供当前的 Instant
,在这种情况下,您可以使用:
LocalDate current = clock.getCurrentInstant().toDateTime(zone).toLocalDate();
(这让您可以使用依赖注入来使用假时钟编写更简单的单元测试。)
你可以试试这个:
LocalDate current = new LocalDate();//Constructs an instance set to the current local time evaluated using ISO chronology in the default zone.
LocalDate x = current.minusDays(31);
或者你可以试试:
LocalDate current = LocalDate.now();//Obtains a LocalDate set to the current system millisecond time using ISOChronology in the default time zone
LocalDate x = current.minusDays(31);
如果需要,您可以使用 JODA API,它非常先进和有用的功能:
String DATE_PATTERN = "dd/MM/yyyy";
DateTimeFormatter formatter = DateTimeFormat.forPattern(DATE_PATTERN);
String systemDate = formatter.print(DateTime.now());
System.out.println("Current Date : " + systemDate);
String newDate = formatter.print(DateTime.now().minusDays(31));
System.out.println("Date 31 days ago : " + newDate);
输出:
当前日期:19/06/2015
31 天前的日期:19/05/2015
我怎样才能得到 x
,它应该比 current_date
早 31 天?
x(date)___________________________current_date
31
只需减去 31 天。例如:
LocalDate current = new LocalDate(2015, 6, 19);
LocalDate x = current.minusDays(31); // 2015-05-19
要获取当前日期,您可以使用:
LocalDate current = new LocalDate(); // Default time zone
或
LocalDate current = new LocalDate(zone); // Some specific zone
或者您可能想要创建自己的 "clock" 表示,它能够为您提供当前的 Instant
,在这种情况下,您可以使用:
LocalDate current = clock.getCurrentInstant().toDateTime(zone).toLocalDate();
(这让您可以使用依赖注入来使用假时钟编写更简单的单元测试。)
你可以试试这个:
LocalDate current = new LocalDate();//Constructs an instance set to the current local time evaluated using ISO chronology in the default zone.
LocalDate x = current.minusDays(31);
或者你可以试试:
LocalDate current = LocalDate.now();//Obtains a LocalDate set to the current system millisecond time using ISOChronology in the default time zone
LocalDate x = current.minusDays(31);
如果需要,您可以使用 JODA API,它非常先进和有用的功能:
String DATE_PATTERN = "dd/MM/yyyy";
DateTimeFormatter formatter = DateTimeFormat.forPattern(DATE_PATTERN);
String systemDate = formatter.print(DateTime.now());
System.out.println("Current Date : " + systemDate);
String newDate = formatter.print(DateTime.now().minusDays(31));
System.out.println("Date 31 days ago : " + newDate);
输出: 当前日期:19/06/2015
31 天前的日期:19/05/2015