我编写了以下程序。
public class StringTest {
public static void main(String[] args){
String x = "\0";
String y = " ";
System.out.println("This is x - "+x+".");
System.out.println("This is y - "+y+".");
System.out.println(x.equals(y));
}
}
当然x.equals(y)
应该清楚false
,因为它们是完全不同String
的s。然而,输出让我感到惊讶。
This is x - .
This is y - .
false
如果这两个String
s 不相等,那么它们如何产生相同的输出?