使单元测试的日期在所有时区都通过,并且带不带夏令时

使单元测试的日期在所有时区都通过,并且带不带夏令时,第1张

使单元测试的日期在所有时区都通过,并且带/不带夏令时

默认情况下,新用户

SimpleDateFormat
将使用系统默认时区。如果您想要一个特定的时区,请致电
setTimeZone

private final static SimpleDateFormat DATE_FORMAT = createFormat();private static SimpleDateFormat createFormat() {    // Make sure there are no locale-specific nasties, either...    SimpleDateFormat ret = new SimpleDateFormat("yyyy.MM.dd'T'HH:mm.ss:SSSZZ",    Locale.US);    ret.setTimeZone(TimeZone.getTimeZone("Etc/UTC");}

对于第二项测试,您想要将其更改为:

new DateTime(0L, DateTimeZone.UTC);

请注意,通常不应该使用静态

SimpleDateFormat
变量,因为它不是线程安全的。(而Joda Time
DateTimeFormatter
实现 线程安全的。)



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5430452.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存