当前位置: 首页 > 面试题库 >

java.util.Date是否使用时区?

常业
2023-03-14
问题内容

我有两台不同的电脑,每台都有不同的时区。

在一台计算机上,im printing System.currentTimeMillis(),然后在两台计算机上打印以下命令:System.out.println(new Date(123456));–>123456表示计算机1中currentTimeMillis中的数字。

第二次打印(尽管打印了硬编码)会在两台计算机上产生不同的打印结果。为什么?


问题答案:

java.util.Date与时区无关。在javadoc中这么说。

你想要一个特定时区的东西吗?这是java.util.Calendar。

棘手的部分?当您打印这些内容(使用java.text.DateFormat或子类)时,它包含一个日历(包含一个时区)。请参见DateFormat.setTimeZone()。

它看起来确实(没有检查实现)像java.util.Date.toString()通过了日期格式。所以即使是我们的(大部分)时区独立类也会被时区搞得一团糟。

想把时区的东西从我们纯粹的无分区约会对象中拿出来吗?有日期。toGMTString()。或者可以创建自己的SimpleDateFormatter并使用setTimeZone()来控制自己使用的区域。



 类似资料:
  • 问题内容: 如果我创建一个新的Date()对象。它将打印的默认时区是什么。 我的机器在GMT中运行。我正在创建一个新的Date()对象。如果我打印为什么它显示周四7月5日8时21分05秒 PKT 2012年它是如何花费的时区为PKT? 问题答案: 日期本身没有任何时区。它的方法使用当前的默认时区返回表示该日期的字符串: 在我的机器上执行上述代码会导致以下输出:

  • 运行此selenium脚本时,我的cpu使用率平均为17%,峰值为22%。这正常吗?我有一个5 5600g处理器,没有在后台运行任何东西。提前谢谢。

  • 问题内容: 我只是写了这个单元测试: 输出为: 的图案是与是使用把字符串日期日期对象的方法的库。 为什么des.java.util.Date对象验证日期有效性? 问题答案: 您需要进行设置,以使SimpleDateFormat严格验证您的输入。 您可以参考setLenient文档以进一步了解。根据定义,

  • 在不需要任何向后兼容的Java代码中使用LocalDate、LocalTime等是否有任何明确的警告或缺点,如果有的话--它们是什么? 我正在寻找类似“当前的EE库X和Y不能正确使用LocalDate”或“这个非常有用的模式被LocalTime破坏了”等等的东西。 (这里有原题供参考) 在Java8中,引入了一个新的时间API,即Java.time.localdate等,但Java.util.da

  • 问题内容: 我已经从a 解析了一个,但是它将本地时区设置为对象的时区。 时区没有指定从中解析。我想设置对象的特定时区。 我怎样才能做到这一点? 问题答案: 使用DateFormat。例如,

  • 在Google的Python类中 Python是一种动态的解释(字节码编译)语言 我知道什么是解释器,也知道什么是字节码,但两者加在一起似乎不合适。在阅读了一些之后,我变得更清楚了,基本上Python源代码在被解释之前是自动编译的;但是出现了一些新的问题。 使用Python解释器时,不会发生编译吗?如果有,什么时候?例如,如果您只是在命令行中键入代码,并且每次按enter键时它都会运行,那么编译器