Perché ...controllo uguaglianza oggetto di riferimento utilizzando == (in Java)
String a = new String("a");
StringBuilder b = new StringBuilder("a");
System.out.println(a==b);
... provocare un errore tipi incompatibili durante la compilazione, dato che ...
String a = new String("b");
Object b = new StringBuilder("b");
System.out.println(a==b);
. .. non?
Perché è possibile confrontare i riferimenti oggetto di una stringa e un oggetto ma non un oggetto StringBuilder e una stringa? Non sono tutti solo indirizzi alle posizioni di memoria?
Grazie
La stringa è 'Object' non' StringBuilder'. – Masudul
Sarebbe mai possibile che i riferimenti 'String' e' StringBuilder' abbiano la stessa istanza? Se no allora qual è il punto del test 'a == b'? Ora sarebbe possibile che i riferimenti 'Object' e' StringBuilder' conservino le stesse istanze? – Pshemo