public class Foo {
public static void main(String[] args) {
foo();
bar();
}
public static void foo() {
String s = "str4";
String s1 = "str" + s.length();
System.out.println("(s==s1)" + (s1 == s));
}
public static void bar() {
String s = "str4";
String s1 = "str" + "4";
System.out.println("(s==s1)" + (s1 == s));
}
}
(s==s1)false
(s==s1)true
A String s1 = "str" + s.length(); il valore di s1 = STR4 ma si scopre di essere falsa al prossimo comunicato sysout durante il doppio uguale (==) controllare
*/
@delnan Non proprio, rileggilo di nuovo. –
È sicuramente un duplicato, ma non di quello. –
@AnubianNoob e altri: La domanda posta non è la stessa, ma il problema di fondo è lo stesso e le risposte laggiù rispondono completamente. – delnan