Originariamente inviato da Oblivion
codice:
if (fig == "sfera")
tenendo presente che il primo token , cioè quello che va a prendere è "sfera" e se stampo fig, mi stampa "sfera", perchè se faccio un controllo del tipo if == "sfera", mi da false e non entra nel cilco?
Perché non è il modo corretto di comparare le stringhe! Quello che tu hai fatto è solo la comparazione tra i due reference, non la comparazione del contenuto delle stringhe. La comparazione darebbe "true" ma solamente se in fig ci fosse un reference ad una stringa "literal" che contiene "sfera".

Il modo più corretto è:
codice:
if (fig.equals ("sfera"))