ciao a tutti...
ho un dilemma...
perké quando eseguo questo codice
codice:
char[] cArr = {'w','w','w','w','d','d'};
int cont = 0;
char c,c_old = '\0';
for(int i = 0; i < cArr.length; i++){
c = cArr[i];
if(c == c_old) cont++;
else if (c != c_old){
System.out.println(cont+""+c_old);
cont = 1;
}
c_old = c;
}
System.out.println(cont+""+c_old);
ottengo il mio bel risultato, ovvero
mentre se uso questo codice
codice:
char[] cArr = {'w','w','w','w','d','d'};
int cont = 0;
char c,c_old = '\0';
StringBuffer prova = new StringBuffer(0);
for(int i = 0; i < cArr.length; i++){
c = cArr[i];
if(c == c_old) cont++;
else if (c != c_old){
prova.append(cont+""+c_old);
cont = 1;
}
c_old = c;
}
prova.append(cont+""+c_old);
System.out.println(prova);
perché cavolo mi viene stampato un inutile
??????????????
Questo succede anche se uso uno String normale al posto dello StringBuffer =_=