String str1 = "ab"; String str2 = str1 + "c" String str3 = "abc" System.out.println(str2 == str3)

为什么输出false?
2024-11-20 18:44:28
推荐回答(2个)
回答1:

因为str2和str3是不同的内存指向,如果你在前面让str3=str2的话 这样输出的就是true了

回答2:

str2经过了运算所以new了新对象,内存地址和str3不一样,就和str3不能“==”了,不过能用equals