Buonasera, il seguente metodo fa parte di una classe estesa e deve ritornare una determinata stringa.
Detto questo, non penso di aver ben compreso il funzionamento di StringBuilder....
Quello che ho capito è che :
- con StringBuilder s =new StringBuilder() ==> creo una nuova stringa s;
- con s.append cambio la stringa;
- e alla fine quando dichiaro s.ToString(); ==> mi riferisco al classico ToString() delle API java e non ad un ToString particolare che posso aver implementato in precedenza. perchè questo?
è questo il reale comportamento della classe StringBuilder?
Grazie in anticipo e buon primo maggio!!!codice:@Override public String getDescrizione(){ StringBuilder s = new StringBuilder(); if (!this.getPartita().getGiocatore().getBorsa().hasAttrezzo(this.direzioneChiave)){ s.append("Qui qualcosa non va, le porte non sono porte"); }else{ s.append(super.getNome()); s.append("\nUscite: "); for (String direzione : super.getDirezioni()) if (direzione!=null){ s.append(" " + direzione); } s.append("\nAttrezzi nella stanza: "); for (Attrezzo attrezzo : this.getAttrezzi()) { if (attrezzo != null) s.append(attrezzo.toString()+" "); } } return s.toString(); }