Originariamente inviata da
boots
Gli indici vanno da 0 a length() - 1, quindi se assegni i = parola1.length(), ma vale anche per j, charAt(i) sarà fuori dalla stringa
Inoltre non mi pare che che abbia senso quello che fai. sarebbe più corretto:
codice:
int minLen = (parola1.length() < parola2.length()) ? parola1.length() : parola2.length();
for(int i = 0; i < minLen; i++){
if(parola1.charAt(i) != parola2.charAt(i)){
break;
}
prefmax += parola1.charAt(i);
}
Cosa simile per il suffisso, anche se sarebbe il caso di trovare (partendo dalla fine) l'indice del ultimo (primo) elemento del suffisso e da questo prendere la sotto-stringa da una delle due parole
PS: Tieni presente che è da tanto che non vedo java, quindi prendi con le molle il codice