java曰历_日期和日历Java

class Employee

{

private Date doj;

public Employee (Date doj)

{

this.doj=doj;

}

public Date getDoj()

{

return doj;

}

}

class TestEmployeeSort

{

public static List getEmployees()

{

List col=new ArrayList();

col.add(new Employee(new Date(1986,21,22));

}

}

在上面的代码中,我使用Date来设置日期.我想知道如何使用日历功能来做到这一点.我知道我可以使用getInstance()并设置日期.但是我不知道如何实现它.请帮助我了解如何使用日历功能设置日期

解决方法:

TL;博士

LocalDate.of( 1986 , Month.FEBRUARY , 23 )

日期,只

这些类都不是,Date&日历,适合.

您显然想要一个仅具有日期的值,而没有日期和时区.相反,Date类是带有UTC时间的日期时间的日期,而Calendar是带有时区的日期时间.

此外,Date& Calendar已过时,已由java.time类取代.

LOCALDATE的

LocalDate类表示不带日期和时区的仅日期值.

今天

时区对于确定日期至关重要.在任何给定时刻,日期都会在全球范围内变化.例如,在Paris France午夜之后的几分钟是新的一天,而在Montréal Québec仍然是“昨天”.

如果未指定时区,则JVM隐式应用其当前的默认时区.该默认值可能随时更改,因此您的结果可能会有所不同.最好将您的期望/期望时区明确指定为参数.

以大洲/地区的格式指定proper time zone name,例如America/Montreal、Africa/Casablanca或太平洋/奥克兰.切勿使用EST或IST等3-4个字母的缩写,因为它们不是真实的时区,不是标准化的,甚至不是唯一的(!).

ZoneId z = ZoneId.of( "America/Montreal" );

LocalDate today = LocalDate.now( z ); // Get current date for a particular time zone.

具体日期

或指定一个日期.您可以用数字设置月份,与传统类中从零开始的疯狂编号不同,1月至12月的编号为1-12.

LocalDate ld = LocalDate.of( 1986 , 2 , 23 ) ; // Both year and month have same numbering. 1986 is the year 1986. 1-12 is January-December.

或者,最好使用预定义的Month枚举对象,一年中的每个月使用一个.提示:在整个代码库中使用这些Month对象,而不是仅使用整数,可以使您的代码更具自记录性,确保有效值并提供type-safety.

LocalDate ld = LocalDate.of( 1986 , Month.FEBRUARY , 23 ) ;

字符串

通过调用toString:YYYY-MM-DD,以标准ISO 8601格式生成表示日期值的字符串.有关其他格式,请参见DateTimeFormatter类.

String output = ld.toString() ; // Generate a string in standard ISO 8601 format, YYYY-MM-DD.

关于java.time

要了解更多信息,请参见Oracle Tutorial.并在Stack Overflow中搜索许多示例和说明.规格为JSR 310.

在哪里获取java.time类?

>内置.

>标准Java API的一部分,具有捆绑的实现.

> Java 9添加了一些次要功能和修复.

>许多java.time功能都向后移植到Java 6& ThreeTen-Backport中的7.

>更高版本的java.time类的Android捆绑实现.

>对于较早的Android,ThreeTenABP项目改编了ThreeTen-Backport(如上所述).参见How to use ThreeTenABP….

ThreeTen-Extra项目使用其他类扩展了java.time.该项目为将来可能在java.time中添加内容提供了一个试验场.您可能会在这里找到一些有用的类,例如Interval、YearWeek、YearQuarter和more.

标签:java

来源: https://codeday.me/bug/20191013/1911529.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值