gpt4 book ai didi

java字符串连接奇怪的行为

转载 作者:行者123 更新时间:2023-11-29 08:20:25 25 4
gpt4 key购买 nike

我遇到了奇怪的字符串concat行为,请帮助我理解这种行为。

String s3 = "ABC";
String s5 = new String(s3);

System.out.println("s5 == s3 "+ s5 == s3); // output: false
System.out.println("s5 == s3 "+ (s5 == s3)); // output: s5 == s3 false

应该先打印 s5 == s3 false 而不是 false 吗?

最佳答案

这是第一个表达式的修改版本,它打印出 false:

System.out.println(("s5 == s3 " + s5) == s3); // "s5 == s3 ABC" == "ABC"

== 的优先级低于+,所以先拼接,再比较。

要使其产生预期的输出,您需要覆盖此运算符优先级,就像您在第二个 sysout 中所做的那样,它将比较结果与字符串连接起来。

关于java字符串连接奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59420039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com