Groovy 中的日期格式

Com*_*ata 0 java groovy date simpledateformat

package com.javacodegeeks.groovy.date
class GroovyDateArithmetic {
static main(args) {
def date = new Date().parse("dd.MM.yyy", '18.05.1988')
def datePlus = date.clone()
def dateMinus = date.clone()
datePlus = datePlus + 5
println datePlus 
Run Code Online (Sandbox Code Playgroud)

上面的代码将打印 Mon May 23 00:00:00 EST 1988。如何格式化最终结果以生成 Mon May 23 1988。

Bas*_*que 5

使用现代java.time类。

\n\n

在Java语法中:

\n\n
String input = "18.05.1988" ;\nDateTimeFormatter f = DateTimeFormatter.ofPattern( "dd.MM.uuuu" ) ;\nLocalDate ld = LocalDate.parse( input , f ) ;\n
Run Code Online (Sandbox Code Playgroud)\n\n

添加或减少时间跨度、调用plus\xe2\x80\xa6minus\xe2\x80\xa6方法。

\n\n
LocalDate later = ld.plusDays( 5 ) ;\n
Run Code Online (Sandbox Code Playgroud)\n\n

要生成以标准 ISO 8601 格式表示该日期值的文本,请调用toString.

\n\n
String output = later.toString():\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n

2018-05-23

\n
\n\n
\n\n

关于java.time

\n\n

java.time框架内置于 Java 8 及更高版本中这些类取代了麻烦的旧遗留日期时间类,例如java.util.Date, Calendar, & SimpleDateFormat

\n\n

Joda -Time项目现在处于维护模式,建议迁移到java.time类。

\n\n

要了解更多信息,请参阅Oracle 教程。并在 Stack Overflow 上搜索许多示例和解释。规格为JSR 310

\n\n

您可以直接与数据库交换java.time对象。使用与JDBC 4.2或更高版本兼容的JDBC 驱动程序。不需要字符串,不需要类。java.sql.*

\n\n

从哪里获取 java.time 类?

\n\n\n\n

ThreeTen -Extra项目通过附加类扩展了 java.time。该项目是 java.time 未来可能添加的内容的试验场。您可能会在这里找到一些有用的类,例如Interval、、、等等。YearWeekYearQuarter

\n