在枚举类中,如何将值转换为类型java.util.date
?枚举仍然必须有一个名称。
我试过了:
ENUM_OPTION1(Date(10000000000L))
但是我收到一条错误消息,指出“无法识别符号日期(长)”,即使我在文件顶部导入了该类。
new Date( … )
使用new
实例化java.util.Date
。
ENUM_OPTION1( new Date( 10_000_000_000L ) )
仅供参考,java.util.Date
是一个可怕的类,多年前被java.time类取代,特别是Instant
.
在您的枚举上添加一个构造函数。在您声明的枚举的每个实例上,调用构造函数。向该构造函数传递特定日期。请参阅Oracle 教程。
public enum History {
US_DECLARATION_OF_INDEPENDENCE( LocalDate.of( 1776 , Month.July , 4 ) ) ,
US_CONSTITIUTION_APPROVED( LocalDate.of( 1787 , 9 , 17 ) )
;
private LocalDate localDate ;
// Constructor
public History( LocalDate ld ) {
Objects.requireNonNull( ld ) ;
this.localDate = ld ;
}
// Getter
public LocalDate getLocalDate() {
return this.localDate ;
}
}
要使用此枚举,请在命名常量实例之一上调用实例方法。
LocalDate ld = History.US_DECLARATION_OF_INDEPENDENCE.getLocalDate() ;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句