2015-05-19 68 views
-6

下面的代碼表示相同的操作,但結果不一樣嗎? 任何人都可以告訴我java如何執行==操作?== Java中的運算符

  String str = new String("Hello"); 
      String str1 = new String("Hello"); 
      System.out.println(str == str1); 

O/P 假

  String str = "Hello"; 
      String str1 = "Hello"; 
      System.out.println(str == str1); 

O/P 真

+3

一個快速的建議的新實例:在發佈新前,務必搜索的問題。這已經被提前很多次了。 –

+0

[可能的重複的如何比較Java中的字符串?](http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java) – MadProgrammer

回答

1

一條線答案下面的語句,

String str = "Hello"; 
String str1 = "Hello"; 
str == str1 

都指向S中相同的字符串字面值游泳池。

這裏,

 String str = new String("Hello"); 
     String str1 = new String("Hello"); 

您可明確要求String池中創建文本「你好」