Я запускаю этот код с JDK 1.4 и 1.5 и получаю разные результаты. Почему это так?
String str = "";
int test = 3;
str = String.valueOf(test);
System.out.println("str[" + str + "]\nequals result[" + (str == "3") + "]");
if (str == "3") {
System.out.println("if");
} else {
System.out.println("else");
}
выходы:
-
на jdk 1.4
str[3] equals result[true] if
-
на jdk 1.5
str[3] equals result[false] else