2015-11-06 81 views
0

我有多個文本框的名稱是 「hobies」分配splited陣列爲String

String[] outerArray=request.getParameterValues("hobies"); 
    for (int i = 0; i < outerArray.length; i++) { 
      String[] innerArray=outerArray[i].split(","); 
      String str = Arrays.toString(innerArray); 
      System.out.println(str); 
    } 

我要分配給字符串如

String All = "Swiming,Reading,Singing"; 
+3

你的問題是什麼? – Stefan

+0

你有沒有嘗試覆寫toString()? 它正在打印正確的東西。 – shaun

回答

1

與空字符串替換支架[]

String all = Arrays.toString(outerArray) 
        .replace("[", "") 
        .replace("]", "") 
        .replace(", ", ","); 
System.out.println(all);//Swiming,Reading,Singing 

另一種方法是使用JDK8 String::join

返回CharSequence的副本組成一個新的String元素與指定分隔符的副本連接在一起。

+0

它的工作原理,但爲什麼像(游泳,閱讀)喜歡(,)後有空間 –

+0

@DickyMahardika我已經更新了答案 – Husam

+0

感謝你的善良 –

0
String All = ""; 
String[] outerArray=request.getParameterValues("hobies"); 
    for (int i = 0; i < outerArray.length; i++) { 
      String[] innerArray=outerArray[i].split(","); 
      String str = Arrays.toString(innerArray); 
      System.out.println(str); 
      All+=str; 
    } 
System.out.println(All); 
+0

使用'StringBuilder'而不是'String'並追加它。 –

0

可以使用String.join(delimiter, elements)功能。這避免了[]

String joinedString = String.join(",", array);