已經有很多人說過二者的區別了,我直接上代碼。
String strA = "123";
String strB = "123";
String strC = "abc";
String strD = "abc";
System.out.println(strA == strB);
System.out.println(strC == strD);
String strE = new String("abc");
String strF = new String("abc");
System.out.println(strE == strF);
System.out.println(strE.equals(strF));
String strG = "def";
String strH = new String("def");
System.out.println(strG == strH);
System.out.println(strG.equals(strH));
答案:
true
true
false
true
false
true