一道面试题
凡是准备过java面试的同学都一定见过一道比较字符相等的面试题,如下:
String s1 = "1";
String s2 = "1";
System.out.println(s == s2); // true
下面我来就这道面试题层层深入,给读者带来一些新的东西,或者加深大家对这一块知识的理解。
先放一个例子,我这里给出的例子比较难一些,如下:
String s = new String("1");
s.intern();
String s2 = "1";
System.out.println(s == s2); // false
String s3 = new String("1") + new String("1");
s3.intern();
String s4 = "11";
System.out.println(s3 == s4); //true or false