我正在使用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");
}
Run Code Online (Sandbox Code Playgroud)
输出:
在jdk 1.4
str[3]
equals result[true]
if
Run Code Online (Sandbox Code Playgroud)在jdk 1.5
str[3]
equals result[false]
else
Run Code Online (Sandbox Code Playgroud)