Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 日期和日历 class员工 { 美国司法部; 公职人员(日期:美国司法部) { 这个.doj=doj; } 公开日期getDoj() { 返回司法部; } } 类TestEmployeeSort { 公共静态列表getEmployees() { List col=new ArrayList(); col.add(新员工(新日期(1986,21,22)); } }_Java - Fatal编程技术网

Java 日期和日历 class员工 { 美国司法部; 公职人员(日期:美国司法部) { 这个.doj=doj; } 公开日期getDoj() { 返回司法部; } } 类TestEmployeeSort { 公共静态列表getEmployees() { List col=new ArrayList(); col.add(新员工(新日期(1986,21,22)); } }

Java 日期和日历 class员工 { 美国司法部; 公职人员(日期:美国司法部) { 这个.doj=doj; } 公开日期getDoj() { 返回司法部; } } 类TestEmployeeSort { 公共静态列表getEmployees() { List col=new ArrayList(); col.add(新员工(新日期(1986,21,22)); } },java,Java,在上面的代码中,我使用了Date来设置日期。我想知道如何使用calendar函数来设置日期。我知道我可以使用getInstance()来设置日期。但我不知道如何实现它。请帮助我了解如何使用calendar函数设置日期 class Employee { private Date doj; public Employee (Date doj) { this.doj=doj; } public Date getDoj() { return doj; } } class TestEmployeeS

在上面的代码中,我使用了Date来设置日期。我想知道如何使用calendar函数来设置日期。我知道我可以使用getInstance()来设置日期。但我不知道如何实现它。请帮助我了解如何使用calendar函数设置日期
class Employee
{
private Date doj;

public Employee (Date doj)
{
this.doj=doj;
}
public Date getDoj()
{
return doj;
}
}


class TestEmployeeSort
{
public static List<Employee> getEmployees()
{
  List<Employee> col=new ArrayList<Employee>();
  col.add(new Employee(new Date(1986,21,22));
}
}
仅日期 这两个类,
Date
Calendar
都不适用

显然,您想要的是一个只包含日期的值,不包含一天中的时间和时区。相反,
date
类是一个包含UTC时间的日期,而
Calendar
是一个包含时区的日期时间

此外,
Date
Calendar
都已过时,被java.time类取代

LocalDate
该类表示一个仅限日期的值,不包含一天中的时间和时区

今天 时区对于确定日期至关重要。对于任何给定的时刻,全球各地的日期都因区域而异。例如,年午夜后几分钟是新的一天,而年仍然是“昨天”

如果未指定时区,JVM将隐式应用其当前默认时区。该默认时区可能随时更改,因此结果可能会有所不同。最好将所需/预期时区显式指定为参数

请以
大陆/地区
的格式指定一个,例如,或
太平洋/奥克兰
。切勿使用3-4个字母的缩写,例如
EST
IST
,因为它们不是真正的时区,不是标准化的,甚至不是唯一的(!)

具体日期 或者指定一个日期。你可以用一个数字来设置月份,1-12月份的数字为1-12,这与传统类中基于零的疯狂数字不同

ZoneId z = ZoneId.of( "America/Montreal" );
LocalDate today = LocalDate.now( z );  // Get current date for a particular time zone.
或者,更好的方法是使用预定义的枚举对象,一年中每个月一个。提示:在整个代码库中使用这些
month
对象,而不仅仅是一个整数,以使您的代码更具自文档性,确保有效值,并提供有效的数据

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


关于java.time 该框架内置于Java8及更高版本中。这些类取代了麻烦的旧日期时间类,如,&

该项目现已启动,建议迁移到类

要了解更多信息,请参阅.和搜索堆栈溢出以获取许多示例和解释。规范为

从哪里获得java.time类

  • ,及以后
    • 内置的
    • 标准JavaAPI的一部分,带有捆绑实现
    • Java9添加了一些次要功能和修复
    • 大部分java.time功能都在中向后移植到Java6和Java7
    • 更高版本的Android捆绑包实现了java.time类
    • 对于早期的Android,该项目采用了ThreeTen Backport(如上所述)

该项目使用其他类扩展了java.time。该项目是未来可能添加到java.time的一个试验场。您可以在这里找到一些有用的类,如、、。

FYI,麻烦的旧日期时间类,如和
java.text.simpleDataFormat
现在被内置在java 8&Java 9.参见。
LocalDate.of( 1986 , Month.FEBRUARY , 23 )
ZoneId z = ZoneId.of( "America/Montreal" );
LocalDate today = LocalDate.now( z );  // Get current date for a particular time zone.
LocalDate ld = LocalDate.of( 1986 , 2 , 23 ) ;  // Both year and month have same numbering. 1986 is the year 1986. 1-12 is January-December. 
LocalDate ld = LocalDate.of( 1986 , Month.FEBRUARY , 23 ) ;
String output = ld.toString() ;  // Generate a string in standard ISO 8601 format, YYYY-MM-DD.