在类中生成字符串,java

在类中生成字符串,java,java,string,println,Java,String,Println,我希望生成一个字符串,这样就可以在打印语句中打印formatArray()。但我不知道如何制作一个字符串,并阻止它自己打印信息。 这是我想用的句子; system.out.println(“您的数字是”+formatArray()) 这是我的密码 public static void formatArray(int[] tallrekke){ for(int i=0; i<tallrekke.length; i++){ if(i>0 &&

我希望生成一个字符串,这样就可以在打印语句中打印formatArray()。但我不知道如何制作一个字符串,并阻止它自己打印信息。 这是我想用的句子;
system.out.println(“您的数字是”+formatArray())


这是我的密码

 public static void formatArray(int[] tallrekke){
     for(int i=0; i<tallrekke.length; i++){
         if(i>0 && i < tallrekke.length -1) {
             System.out.print(", ");
         }
         else if (i> tallrekke.length -2) {
             System.out.print(" og ");
         }
         System.out.print(tallrekke[i]);
    }
}
publicstaticvoidformatarray(int[]tallrekke){
对于(int i=0;i0&&itallrekke.length-2){
系统输出打印(“og”);
}
系统输出打印(tallrekke[i]);
}
}

首先,您需要将方法的返回类型设置为String而不是void。然后应该使用StringBuilder创建字符串

public static String formatArray(int[] tallrekke) {
    StringBuilder stringBuilder = new StringBuilder();
    for(int tall : tallrekke){
        stringBuilder.append(tall);
    }
    return stringBuilder.toString();
}

使您的方法返回字符串:

public static String formatArray(int[] tallrekke){
    StringBuilder sb = new StringBuilder();
    for(int i=0; i<tallrekke.length; i++){
        if(i>0 && i < tallrekke.length -1) {
            sb.append(", ");
        }
        else if (i> tallrekke.length -2) {
            sb.append(" og ");
        }
        sb.append(tallrekke[i]);
   }
    return sb.toString();
   }

public static void main( String[] args) {

    int[] tab = {1,2,3};
    System.out.println( formatArray( tab ) );

}

也许可以使用“return”代替System.out.print,然后可以打印函数返回的任何内容

public String formatArray(int[] tallrekke){
    for(int i=0; i<tallrekke.length; i++){
        if(i>0 && i < tallrekke.length -1) {
            return ", ";
        }
        else if (i> tallrekke.length -2) {
            return  " og ";
        }
        return  String.valueOf(tallrekke[i]);
    }
}
公共字符串格式数组(int[]tallrekke){
对于(int i=0;i0&&itallrekke.length-2){
返回“og”;
}
返回字符串.valueOf(tallrekke[i]);
}
}

尽管您的预期输出不清楚,但这正是您所需要的:

public static String formatArray(int[] tallrekke){
    StringBuilder stringBuilder = new StringBuilder();
    for(int i=0; i<tallrekke.length; i++){
        if(i>0 && i < tallrekke.length -1) {
            stringBuilder.append(", ");
        }
        else if (i> tallrekke.length -2) {
            stringBuilder.append(" og ");
        }
        stringBuilder.append(tallrekke[i]);
    }
    return stringBuilder.toString();
}

与您的解决方案类似

public class Main {
    public static void main (String[]args) throws IOException, ParseException {
        int[] nums = {1,2,3,4,5};
        System.out.println("your numbers are "+formatArray(nums));
    }

    public static String formatArray(int[] tallrekke){
        String result = "";
        for(int i=0; i<tallrekke.length; i++){
            if(i>0 && i < tallrekke.length -1) {
                result +=  ", ";
            }
            else if (i> tallrekke.length -2) {
                result += " og ";
            }
            result +=tallrekke[i];
        }
        return result;
    }
}
压缩格式数组方法:

 public static String formatArray(int[] tallrekke){
        String result = "";
        for (int i = 0; ; i++) {
            result +=tallrekke[i];
            if (i == tallrekke.length-1)
                return result;
            result+= i==tallrekke.length-2?" og ":", ";
        }
    }

formatArray方法应返回字符串。字符串连接在forLoop中。

你能添加一个带值的示例数组和你的预期输出吗?次要说明,他说他希望能够在
System.out.println(FormatArray(arr))
中调用它,所以他很可能希望它
返回字符串。
。我想你误解了这个问题,他希望将
字符串添加到一起,而不仅仅返回一小部分。
public static String formatArray(int[] tallrekke){
    StringBuilder stringBuilder = new StringBuilder();
    for(int i=0; i<tallrekke.length; i++){
        if(i>0 && i < tallrekke.length -1) {
            stringBuilder.append(", ");
        }
        else if (i> tallrekke.length -2) {
            stringBuilder.append(" og ");
        }
        stringBuilder.append(tallrekke[i]);
    }
    return stringBuilder.toString();
}
int[] tallrekke = {0,1,2};
System.out.println("your numbers are"+formatArray(tallrekke));
public class Main {
    public static void main (String[]args) throws IOException, ParseException {
        int[] nums = {1,2,3,4,5};
        System.out.println("your numbers are "+formatArray(nums));
    }

    public static String formatArray(int[] tallrekke){
        String result = "";
        for(int i=0; i<tallrekke.length; i++){
            if(i>0 && i < tallrekke.length -1) {
                result +=  ", ";
            }
            else if (i> tallrekke.length -2) {
                result += " og ";
            }
            result +=tallrekke[i];
        }
        return result;
    }
}
your numbers are 1, 2, 3, 4 og 5
 public static String formatArray(int[] tallrekke){
        String result = "";
        for (int i = 0; ; i++) {
            result +=tallrekke[i];
            if (i == tallrekke.length-1)
                return result;
            result+= i==tallrekke.length-2?" og ":", ";
        }
    }