我需要將字符串矢量轉換爲簡單字符串。我不知道如何繼續。 我嘗試了各種解決方案,如如何將矢量字符串轉換爲簡單字符串
for(int i=1; i < easy.length; i++){
easyPuzzle = easy[i].toString();
}
System.out.println(" " + easyPuzzle);
但是這種解決方案僅打印第i個元素,而不是整個串矢量。
我需要將字符串矢量轉換爲簡單字符串。我不知道如何繼續。 我嘗試了各種解決方案,如如何將矢量字符串轉換爲簡單字符串
for(int i=1; i < easy.length; i++){
easyPuzzle = easy[i].toString();
}
System.out.println(" " + easyPuzzle);
但是這種解決方案僅打印第i個元素,而不是整個串矢量。
你不斷重新分配一個新值easyPuzzle
當你真的想連接:
easyPuzzle += easy[i].toString();
如果easy.length
大,它可能是有意義的使用StringBuilder在比字符串拼接更高效:
StringBuilder builder = new StringBuilder();
for(int i=1; i < easy.length; i++){
builder.append(easy[i].toString());
}
easyPuzzle = builder.toString();
另外,通過在i=1
處開始for循環,您將排除第一項。不確定它是否有意或無意。如果不是,請從i = 0
開始。
或者,爲了節省自己編寫循環的痛苦,您可以使用@Manoj's answer,它將您的代碼替換爲一行。
使用的toString Arrays類
Arrays.toString(easy);
我建議你使用StringBuilder
與append(<data>)
方法,然後將其轉換爲String
。
StringBuilder data = new StringBuilder();
for(int i = 1; i < easy.length; i++){
data.append(easy[i].toString());
}
easyPuzzle = data.toString();
String
是不可改變的工作,所以它是更消耗。當您使用String
時,我建議您使用StringBuilder
,更有效且更快。
更新: @Manoj答案非常有用。
+1,請注意,如果超過1維數組,最好使用'Arrays.deepToString(a)' – mishadoff
@mishadoff。 – Manoj