2012-07-02 94 views
-6

海蘭大家一個字符串,轉換陣列在Java

我需要的長數組轉換成數組(1,2,3,4,5)

new String[] {arrayTeste.toString().replace("[","(").replace("]",")")} 

這是正確的?

+4

你需要做什麼? –

+1

很難說出這裏提出的問題。 – user1329572

+0

你想要做什麼?將表單(1,2,3,4,5)的字符串轉換爲數組?編輯問題並使其正確。 – akaHuman

回答

0

使用StringBuilder和所有數組元素追加到它。它比直接連接字符串更有效。

這很像Arrays.toString()做工作,但它不需要事後更換支架:

StringBuilder b = new StringBuilder(); 
b.append("("); 

for(int i = 0; i < arrayTeste.length; ++i) { 
    if(i != 0) 
    b.append(","); 

    b.append(arrayTeste[i]); 
} 
b.append(")"); 
String s = b.toString(); 
0

根據你的文章標題,我想你想將數組的內容轉換爲一個格式化的字符串。

遍歷數組和格式因此在每一個項目:

string s = ""; 

for (int i = 0; i < array.length; i++) { 

    if (i == 0) s += "(" + array[i]; 
    if (i == array.length - 1) s += array[i] + ")"; 
    if (i != 0 && i != array.length - 1) { 

     s += array[i] + ","; 
    } 
}  

這應該做的伎倆,粗略。

+0

感謝您的幫助Marc –

0

您可以使用Arrays.toString(long[])

1

如果我明白你的意思,你要做的:

long[] array = ...; 
String string = Arrays.toString(array).replace('[', '(').replace(']', ')'); 

如果您想將long的數組轉換爲Strin g的數組,您可以這樣做:

long[] array = ...; 
String[] strings = new String[array.length]; 
for (int i=0; i < array.length; i++) { 
    strings[i] = String.valueOf(array[i]); 
} 

在一個行:

String[] strings = Arrays.toString(array).replaceAll("(\\s+|\\[|\\])","").split(",");