【发布时间】:2018-09-05 07:21:20
【问题描述】:
我期待输出为真,但我得到的输出为假 谁能解释一下?
String st = "mah";
String st1 = "mah";
String test = st + st1;
String test1 = st + st1;
System.out.println(test == test1);
【问题讨论】:
-
请edit您的问题为您使用的语言添加标签。这是最重要的标签。
-
您没有指定语言。假设您正在使用 java: 1. st + st1 返回一个包含“mahmah”的新对象 2. 由于 st + st1 被调用两次,它返回两个不同的对象(也许实习有时会使该语句无效?) 3. 你正在使用 == 这意味着(对于对象)除非两个变量都“指向”同一个对象,否则您将得到错误。 (例如,如果String test1 = test,则结果为真)但是正如stackoverflow.com/questions/5286310/string-comparison-in-java中提到的,您应该使用equals方法来比较字符串
标签: string concatenation