【发布时间】:2012-02-17 00:29:55
【问题描述】:
在java.lang.String.java中出现,Java只会生成hashcode,然后在调用hashcode()之后存储,但是为什么不直接在构造函数中制作hashcode呢?
相关代码:
if (h == 0 && count > 0) {
int off = offset;
char val[] = value;
int len = count;
for (int i = 0; i < len; i++) {
h = 31*h + val[off++];
}
hash = h;
}
大部分可以放在构造函数中。
【问题讨论】:
-
如果您找到可接受的答案,您可以勾选它,让人们知道您对您的问题有答案。
标签: java string lazy-initialization