看
Java的String类,我们可以看到哈希码在首次评估后被缓存.
public int hashCode() { int h = hash; if (h == 0 && value.length > 0) { char val[] = value; for (int i = 0; i < value.length; i++) { h = 31 * h + val[i]; } hash = h; } return h; }
hash是实例变量.我有一个问题,为什么我们需要这个h额外的变量?
@H_502_6@