2014-02-18 64 views
0

我有以下HashMap有條件連接字符串中的for循環,或使用預定義的字符串

private HashMap<String, Team> allTeams = new HashMap<String, Team>(); 

我想回到在我的聯賽String所有的球隊,否則返回消息「在聯賽中沒有球隊」。

我寫了這個代碼:

public String getTeam() 
{   
    String x = ""; 

    for(Team tm : allTeams.values()) 
    {   
     if(tm.getStatus().equals("Added")) 
     {     
      x = x + tm.toString(); 
     }  
     else 
     { 
      x = "there are no teams in your league"; 
     } 
    } 
    return temp;  
} 

如果我刪除條件語句代碼工作的「其他人」的一部分。然而,如果我保留「其他」部分,我會不斷收到「你的聯盟中沒有球隊」,我知道這是因爲一旦所有球隊都被退回,就不會有進一步的球隊返回,因此「其他球隊「聲明的一部分總是打印出來。

我該如何得到這個工作?

回答

0

一種方法是檢查x是否在循環外是空的,並且如果是的話就設置它。

public String getTeam() 
{   
    String x = ""; 

    for(Team tm : allTeams.values()) 
    {   
     if(tm.getStatus().equals("Added")) 
     {     
      x = x + tm.toString(); 
     }  
    } 
    if (x.isEmpty()) 
    { 
     x = "there are no teams in your league"; 
    } 
    return x;  
} 

我以爲你想回x,不temp,爲temp沒有在這裏定義。

+0

非常感謝你....現貨!像一種享受 – xirokx