2011-02-04 164 views
0

我有一個android應用程序。在我從EditTest比較兩個字符串,但我得到一些奇怪的結果...if語句中的錯誤

if(v==findViewById(R.id.submit)){ 
      // 

      if(email==crfm_email) 
      { 

       String warn="Done!"; 
       Toast toast = Toast.makeText(getBaseContext(), warn, Toast.LENGTH_LONG); 
       toast.show(); 
      } 
      else 
      { 
       oFN=(EditText)findViewById(R.id.owners_first_name); 
       String warn="email addresses do not match "+eMail+" "+crfEmail; 
       Toast toast = Toast.makeText(getBaseContext(), warn, Toast.LENGTH_LONG); 
       toast.show(); 

      } 

     } 

的問題是,控制一定要去,即使兩個變量輸入相同的其他部分。 我知道它是一個簡單的錯誤,但無法破解出來......!

+1

「如果」是不是循環。!!!! – 2011-02-04 13:16:32

+0

謝謝爲什麼這個評論「」如果「不是循環。!!!! - radkrish」? – rahul 2011-02-04 13:25:46

+0

Iam confused..because因爲我有這個問題不止一個答案,所有都是類似的..哪一個被接受..第一個答覆..? – rahul 2011-02-04 13:26:57

回答

2

看起來你正在做一個對象比較而不是對象比較。

if(email==crfm_email) 

大概應該是...

if(email.equals(crfm_email)) 
+0

感謝它的工作... – rahul 2011-02-04 13:19:14

3

用途:

if (email.equals(crfm_email)) 
{ 
    .... 

的字符串進行比較。要點是要比較String的內容,而不是對String對象的引用。

2

嘗試:在java的

email.equals(crfm_email) 

==進行比較,如果它是字符串,如果不是字符串的內容是相同的