下面用代碼來測試:
public class Test
{
public static void main(String[] args)
{
String str1 = "hello";
String str2 = "hello";
System.out.println(str1 == str2);//true
System.out.println(str1.equals(str2));//true
String str3 = new String("hello");
String str4 = new String("hello");
System.out.println(str3 == str4);//false
System.out.println(str3.equals(str4));//true
System.out.println(str1 == str3);//false
System.out.println(str2.equals(str3));//true
//這裡涉及到==和equals方法的差別,請看我的另一篇文章:《
Java中, equals 與 == 的淵源
》http://jingyan.baidu.com/article/f96699bbc9d6ae894e3c1b81.html
}
}