2011-08-08 51 views

回答

1
public static String getCsv(List<String> list) { 
    if (list == null) 
     return null; 
    StringBuilder buff = new StringBuilder(); 
    for(int i=0; i<list.size(); i++){ 
      String item = list[i]; 
      if (i!=0) 
       buff.append(","); 
      buff.append(item); 
    } 
    return buff.toString(); 
} 
+0

這段代碼應該正確處理first/last元素,它使用的是StringBuilder而不是StringBuffer,因爲它在非併發代碼中速度較快 –

0

迭代在你的收集和使用StringBuilder和追加每個元素和一個逗號。如果集合包含多個0元素,請刪除最後一個逗號。

public static String getMyString(Collection<String> coll) { 
    StringBuilder sb = new StringBuilder(); 
    for (String str : coll) { 
     sb.append(str).append(","); 
    } 

    if (coll.size() > 0) { 
     sb.delete(sb.length()-1,sb.length()); 
    } 
    return sb.toString(); 
} 
+0

最後一個元素 –

+0

我不想追加逗號 –

+0

如果是最後一個元素,請跳過逗號。或者甚至可以在迭代完成後刪除最後一個逗號。\ –