Appare in java.lang.String.java, che Java genererà solo l'hashcode e quindi lo memorizzerà dopo una chiamata a hashcode(), ma perché non creare semplicemente l'hashcode nel costruttore?Perché viene generato un codice hash Java stringa pigro?
Il codice rilevante:
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;
}
potrebbe in gran parte essere collocato nel costruttore.
Se trovi una risposta accettabile puoi spuntarla per far sapere alla gente che hai una risposta alla tua domanda. –