我想创建一个静态方法静态字符串displayArray(int [] array),它将一个整数数组作为参数,使用一个循环来创建并返回一个表示该内容的新String。数组用大括号括起来,用逗号分隔。 例如,
int [] myArray = { 12,9,10,25};
String str = displayArray(myArray);
System.out.println (str); // should display {12,9,10,25}
我的解决方案:
public static String displayArray (int [] array) {
for (int i=0; i< array.length; i++) {
System.out.println(array[i]);
}
return null;
}
但它输出如下:
12
9
10
25
null
答案 0 :(得分:1)
这样的事情:
public static String displayArray (int [] array) {
StringBuilder sb = new StringBuilder();
for (int i=0; i< array.length; i++) {
sb.append(array[i]);
if(i!=array.length-1)
sb.append(",");
}
return "{"+sb.toString()+"}";
}
答案 1 :(得分:1)
您需要构建一个String对象才能返回。现在你返回null,几乎没有。
我建议使用StringBuilder,它比直接连接Strings快一点。因此,在循环之前,您需要定义一个StringBuilder对象并添加左括号:
StringBuilder returnString = new StringBuilder();
returnString.append("{");
然后在你的循环中,你可以连接每个数字:
returnString.append(Integer.toString(array[i]);
之后,您需要检查是否有最后一个元素,如果没有,请附加一个逗号。
最后追加右括号,而不是返回null使用:
return returnString.toString();
答案 2 :(得分:1)
你可能需要这个:
public static String displayArray(int[] array) {
StringBuilder builder = new StringBuilder("{");
for (int i = 0; i < array.length; i++) {
builder.append((array[i])).append(",");
}
return builder.substring(0, builder.length() - 1).concat("}");
}
答案 3 :(得分:0)
请改为:
android:progressBackgroundTint=""
答案 4 :(得分:0)
是的,它正是为您提供正确的输出。 要获得所需的输出,您可以修改显示阵列功能,如下所示:
public static String displayArray (int [] array) {
String str = "";
for (int i=0; i< array.length; i++) {
str += array[i]+",";
}
returns str;
}
答案 5 :(得分:0)
没有一个答案显示您想要的输出。
public static String displayArray (int [] array) {
StringBuilder sb = new StringBuilder();
sb.append("{");
for (int i=0; i< array.length; i++) {
sb.append(array[i]);
if(i != array.length-1)
sb.append(",");
}
sb.append("}");
return sb.toString();
}
答案 6 :(得分:0)
public static String displayArray( int[] array )
{
return "{" + Arrays.toString( array ).replace("[", "").replace("]", "") + "}";
}
取消@BorisTheSpider的想法,因为我发现这比Stringbuilder
更容易,这是返回字符串{ val1, val2, val3 }
的方法。
基本上,手动打印括号并用""
替换括号。