2017-12-27 77 views
0

我有這樣的可變JSON_STRING[{"person":"123abc"}]一些JSON我嘗試解析JSON字符串這樣與java中的字符串getString有什麼不同?

JSONObject person = (new JSONObject(JSON_STRING)); 
    String name = person.getString("person"); 
    String test= "123abc"; 
    if(name == test){ 
     System.out.print("Success"); 
    }else{ 
     System.out.print("Fail"); 
    } 

我做一些簡單的邏輯與的if else但我有一些問題可變nametest不一樣的,因爲結果Fail。我不知道爲什麼內容變量nametest被認爲不相同。如果有人有一些解決方案,請幫助。

感謝

+0

你知道 「==」 和.equals之間的差異()在java? – Pratyay

+1

實際上,請比較字符串與'equals' – HatsuPointerKun

回答

2

這裏:

if(name == test){ 

你比較沒有參考價值。用途:

if(name.equals(test)){ 
+0

,他確實比較了字符串。我認爲你的意思是:「你比較參考,而不是數值」 – Stultuske

+0

是的,我改變了它 – marcinj

+0

感謝您的簡單解釋和它的工作 – Nugka

1

if(name == test){應該if(name.equals(test)){

==用於比較的參考,並equals使用比較值

相關問題