我在Java中设置日期时观察到异常。我正在尝试以下操作:-Date date1 = new Date("10/12/2018");因此,当我打印日期时,它即将到来 它正在打印此日期:- 2019年6月14日。当我执行以下操作时:-Date date1 = new SimpleDateFormat("dd/MM/yyyy").parse("10/12/2018");它显示确切的日期。任何人都可以解释为什么会发生这种情况吗?提前致谢。
2 回答
一只斗牛犬
TA贡献1784条经验 获得超2个赞
时间
要对日期进行硬编码,请使用以下命令:
LocalDate date2 = LocalDate.of(2018, Month.OCTOBER, 12);
System.out.println("Harcoded date: " + date2);你永远不会怀疑,这是月,日和年。输出为:
哈码日期: 2018-10-12
您应该避免设计不良且过时的类,甚至更多已弃用的构造函数。相反,我使用的是从爪哇时间,现代的Java日期和时间API。另外,a 表示日历日期(不带一天中的时间),与 相反,尽管它的名称表示一个时间点。DateLocalDateLocalDateDate
顺便说一句,我无法重现您的问题。我得到(这也同意文档,尽管文档的这一部分很难阅读和理解)。Fri Oct 12 00:00:00 CEST 2018
链接: 甲骨文教程: 日期时间解释如何使用 java.时间.
鸿蒙传说
TA贡献1865条经验 获得超7个赞
Date() 构造函数(注意:它已弃用!)不知道什么是月和年。
美国:月/日/年,而欧洲则是日/月/年。
在第二种形式中,你是明确的。在第一种形式中,它选择了错误的一个。
添加回答
举报
0/150
提交
取消
