mah*_*ati 1 java string equality operators operator-precedence
大家好,
System.out.println()用字符串以不同的方式表现.任何人都可以解释原因
请参阅以下代码段
String a ="hello"
String b ="hello"
System.out.println("a==b"+"is"+a==b)
Run Code Online (Sandbox Code Playgroud)
我希望这可以打印'a==b is true',但它只是打印false,我不知道为什么.
打印一个false,因为您没有对布尔表达式进行分组.
表达方式:
"a==b"+"is"+a==b
Run Code Online (Sandbox Code Playgroud)
被评估为
("a==b"+"is"+a) == (b)
Run Code Online (Sandbox Code Playgroud)
虽然你想让它做一个字符串连接:
"a==b"+"is"+ (a==b)
Run Code Online (Sandbox Code Playgroud)
也就是说,你不应该==像其他人指出的那样使用字符串.