小编D. *_*ács的帖子

为什么java.time.Period#normalized()无法将天标准化?

在Java类中,java.time.Period该方法normalized()Javadoc中包含以下内容:

这将使年和月单位标准化,而使天单位保持不变。

超类的方法在其Javadoc中具有以下内容:

规范化过程特定于每个日历系统。例如,在ISO日历系统中,年和月被标准化,而天未被标准化,[...]

我无权访问ISO 8601-1:2019的实际文本,也不想在上面花费数百个[在此处插入货币](我想标准化可能在第1部分中描述:基本规则而不是在第2部分:扩展中)。

有人可以阐明为什么Period#normalized()不使天数正常化吗?它是否真的直接来自ISO 8601本身,是在其他地方指定的,还是仅特定于Java实现的?

java datetime iso8601 period java-time

9
推荐指数
1
解决办法
157
查看次数

根据Effective Java返回空集合

Effective Java,第43项规定:

返回不可修改的空集合而不是null.

到现在为止还挺好.有什么指导方针,到底要返回什么?这个问题甚至有意义吗?我在想的是:

  • 是否返回emtpy LinkedList<>或是否有所不同ArrayList<>(0)
  • 是否返回空HashMap<>或者是否有所不同TreeMap<>
  • 等等

性能差异?几乎不.

内存占用?也许.

CPU占用空间?也许.

是否应该全局声明这些静态返回(即缓存)?

java collections effective-java

2
推荐指数
1
解决办法
485
查看次数