-3

我正在创建一个方法,您可以在其中添加参数 char 值在 int 数组的开头和结尾,以及每个整数之间的字符串。

这是我到目前为止得到的:

 public static String toString(int[] a, char start, char end, String space)
    {
        for (int i = 0; i < a.length; i++) 
        {

            a += space;
        }
    }

例如,我希望它像这样写出来:

<1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10>
4

4 回答 4

3
  1. 你需要返回一个字符串,所以声明一个Stringor StringBuilder
  2. 将开始字符添加到字符串
  3. 遍历数组并连接数字和空格。
  4. 连接结束字符
  5. 如果StringBuilder使用,则返回toString(); 如果String使用,则返回字符串。

希望这可以帮助。

于 2013-09-12T20:53:35.030 回答
1

使用StringBuilder DEMO

public static String toString(int[] a, char start, char end, String space)
{
    int len = a.length;
    StringBuilder builder = new StringBuilder(len + (len - 1) * space.length() + 2);
    builder.append(start);

    for (int i = 0; i < len; i++) {
        if (i != 0) builder.append(space);
        builder.append(a[i]);
    }

    builder.append(end);

    return builder.toString();
}

用法:

System.out.println(toString(new int[] {1,2,3,4,5,6,7,8,9,10}, '<', '>', " - "));

输出:

<1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10>
于 2013-09-12T20:53:48.570 回答
1

这应该有效:

String output = 
     start + Arrays.toString(a).replaceAll("[\\[\\]]", "").replace(", ", space) + end;
于 2013-09-12T20:53:55.253 回答
0

试试这个代码

public static String toString(int[] a, char start, char end, String space)
{
    String str = "";
    str = str+start;
    for (int i = 0; i < a.length; i++) 
    {
        str = str+a[i]+space;           
    }
    str = str+end;
    return str;
}
于 2013-09-12T20:54:26.913 回答