2015-08-15 55 views
0

我有字符串來比較,但我不能讓它工作,即使我搜索谷歌和stackoverflow。Android Studio Java String比較

因此,這裏是我的代碼:

@Override 
     protected void onPostExecute(String s) { 
      super.onPostExecute(s); 
      loading.dismiss(); 
      if(s.equalsIgnoreCase("success")){ 
       Intent intent = new Intent(Najava.this,UserProfile.class); 
       intent.putExtra(USER_NAME,username); 
       startActivity(intent); 
      }else{ 
       Toast.makeText(Najava.this,s,Toast.LENGTH_LONG).show(); 
      } 
     } 

但活動不會改變和烤麪包的消息顯示了相同的字符串: http://i.stack.imgur.com/ApJLp.png

+0

我會比較靜態字符串與您的變量將不會中斷空值的情況下。但是這不能解決你的問題。 – rekire

回答

2

看來,字符串s存在不必要的字符。下面 嘗試:

if(s.contains("success"){} 

注:對於字符串比較,它總是好的做法比較與其他字符串常量的值。這將從空指針保存代碼。

if("success".equalsIgnoreCase(s)){} 
+0

這實際上工作:)謝謝! –

+0

Gr8。如果您對答案滿意,請注意/接受:) –

0

之前將這個線你是否:

s = s.toLowerCase().trim(); 

或從super.onPostExecute();刪除s

+0

沒有幫助。 :( –