2015-07-20 97 views
-1

我想用我有的字段數製作一個字符串,在這個例子中是15但我想要一個可變數量的字段。在一個循環中創建一個字符串

new String[] { "field1", "field2", "field3"} 

我認爲一個會是一個好主意,但我怎樣才能總結過去的「領域」?

String fields[]; 
    for (int i=0; i < headers.size(); i++){ 
     String temp[]={"field"+"[i]"}; 
     fields=fields+temp; 
    } 

我要的是

String new[]{ "field1", "field2", "field3"} 
+2

你想使一個String數組'的String []'或'單String' ? – Codebender

+0

你是什麼意思*總結過去的「領域」*?輸入和預期結果的後示例。 BTW數組和列表從0索引,而不是1. – Pshemo

+0

字符串數組[] – mnfaria

回答

0
int x = 100;//The number you want 
String[] tmp = new String[x]; 
for(int p = 0; p < x; p++) { 
    tmp[p] = "field" + (p + 1); //P+1 to offset for the 0 start. 
} 

這會給什麼,我認爲你正在尋找的結果。而不是你想要做的,只需創建一個正確大小的空數組,然後用結果填充它。

如果你只是希望打印字段的摘要,用類似這樣的東西...

String output = ""; 
for(int p = 0; p < tmp.length; p++) { 
    output += " " + tmp[p]; //added a space for readability 
} 
System.out.println(output); 
+1

'output + =「」+ tmp [p];'不要在循環內部做這個。使用'StringBuilder'和'append'方法。現在,在每次迭代中,您都要創建一個新的String,它需要複製舊的字符串並將新的部分添加到它。注意,複製長字符串只是爲了添加一些小部分可能會非常昂貴。 – Pshemo

+0

我不建議在循環中使用字符串連接。最好的方法是使用StringBuilder來避免使用不必要的字符串混淆內存。 – JFPicard

+0

@JFPicard所以這樣的事情? (int i = 0; i mnfaria

相關問題