-6

みなさん、こんにちは。

longの配列を配列(1,2,3,4,5)に変換する必要があります

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

これは正しいです?

4

4 に答える 4

1

私があなたの意味を理解しているなら、あなたはしなければなりません:

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

longの配列をgの配列に変換する場合は、次のようにStrin実行できます。

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(",");
于 2012-07-02T11:50:36.880 に答える
0

あなたの投稿のタイトルによると、配列の内容を1つのフォーマットされた文字列に変換したいと思います。

配列内のすべての項目を繰り返し、それに応じてフォーマットします。

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] + ",";
    }
}    

大まかに言って、これでうまくいくはずです。

于 2012-07-02T11:48:01.580 に答える
0

使用できますArrays.toString(long[])

于 2012-07-02T11:48:29.960 に答える
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();
于 2012-07-02T11:48:47.673 に答える