Java 如何输出带有数字和特定格式的数组

Java 如何输出带有数字和特定格式的数组,java,arrays,Java,Arrays,我是java新手,正在尝试输出以下数组: -5、-2、-12、7、3、15、10 就像这样: [0:5,1:2,2:12,3:7,4:3,5:15,6:10] public static void array(int[] numbers) { int index = 0; System.out.print("["); for (int i = 0; i < numbers.length; i++){ System.ou

我是java新手,正在尝试输出以下数组: -5、-2、-12、7、3、15、10

就像这样: [0:5,1:2,2:12,3:7,4:3,5:15,6:10]

public static void array(int[] numbers) {
        int index = 0;
        System.out.print("[");
        for (int i = 0; i < numbers.length; i++){
            System.out.print(index + ": " + numbers[i] + ", ");
            index ++;
        }
        System.out.print("]");
}
公共静态无效数组(int[]个){
int指数=0;
系统输出打印(“[”);
for(int i=0;i
当我运行我的代码时,除了在10后面有一个逗号外,它看起来和应该的完全一样。 关于如何去掉最后一个逗号,或者有更好的方法吗

谢谢你的帮助!
CK

for
循环中读取最后一个数组索引时,不需要在print语句中添加逗号。给你:

   for (int i = 0; i < numbers.length; i++){
        if(i == numbers.length -1) {
           System.out.print(index + ": " + numbers[i]);
        } else {
           System.out.print(index + ": " + numbers[i] + ", ");
        }
        index ++;
    }
for(int i=0;i
for
循环中读取最后一个数组索引时,不需要在print语句中添加逗号。给你:

   for (int i = 0; i < numbers.length; i++){
        if(i == numbers.length -1) {
           System.out.print(index + ": " + numbers[i]);
        } else {
           System.out.print(index + ": " + numbers[i] + ", ");
        }
        index ++;
    }
for(int i=0;i
由于您每次都需要逗号,但最后一次需要逗号,因此可以执行以下操作:

System.out.print(index + ": " + numbers[i] + (i != numbers.length-1 ? ", " : "");
这将打印出一个逗号,但在最后一次传递时除外


另外,由于
i
从零变为极限,因此不需要
索引
变量。你可以用
i
代替“index”。

因为你每次都需要逗号,但最后一次,你可以这样做:

System.out.print(index + ": " + numbers[i] + (i != numbers.length-1 ? ", " : "");
这将打印出一个逗号,但在最后一次传递时除外


另外,由于
i
从零变为极限,因此不需要
索引
变量。您可以使用
i
代替“index”。

您可以使用if语句,如果逗号不是最后一个索引,则只打印逗号

for (int i = 0; i < numbers.length; i++){
    System.out.print(i + ": " + numbers[i]);
    if(i != numbers.length -1) {
       System.out.print(", ");
    }
}
for(int i=0;i
或者,打印循环之前的第一个元素,并在其后的每个元素前面加一个逗号

System.out.println(0 + ": " + numbers[0]);

for (int i = 1; i < numbers.length; i++){
  System.out.print(", " + index + ": " + numbers[i]);
}
System.out.println(0+:“+数字[0]);
对于(int i=1;i
如果逗号不是最后一个索引,则可以放置一个if语句,该语句只打印逗号

for (int i = 0; i < numbers.length; i++){
    System.out.print(i + ": " + numbers[i]);
    if(i != numbers.length -1) {
       System.out.print(", ");
    }
}
for(int i=0;i
或者,打印循环之前的第一个元素,并在其后的每个元素前面加一个逗号

System.out.println(0 + ": " + numbers[0]);

for (int i = 1; i < numbers.length; i++){
  System.out.print(", " + index + ": " + numbers[i]);
}
System.out.println(0+:“+数字[0]);
对于(int i=1;i
我将实现这样的方法(请注意,实现中的
索引
是多余的,因为它始终等于
I
):

publicstaticvoidprintary(int[]数字){
StringBuilder sb=新的StringBuilder();
for(int i=0;i0){
某人加上(“,”);
}
sb.append(字符串格式(“%d:%d”,i,数字[i]);
}
系统输出打印(“[”+sb.toString()+“]”);
}

我正在使用它,这使得从数组内容组成单个
字符串变得简单(且有效)。当您想要创建格式化输出时,它非常有用。

我将实现如下方法(请注意,实现中的
索引
是多余的,因为它始终等于
I
):

System.out.print("[");
for (int i = 0; i < numbers.length; i++){
    if(numbers.length -1==i)
       System.out.print(i+ ": " + numbers[i]);
     else 
       System.out.print(i + ": " + numbers[i] + ", ");          
}
System.out.print("]");
publicstaticvoidprintary(int[]数字){
StringBuilder sb=新的StringBuilder();
for(int i=0;i0){
某人加上(“,”);
}
sb.append(字符串格式(“%d:%d”,i,数字[i]);
}
系统输出打印(“[”+sb.toString()+“]”);
}
我正在使用它,这使得从数组内容组成单个
字符串变得简单(且有效)。当您想要创建格式化输出时,此选项非常有用。

System.out.print(“[”);
System.out.print("[");
for (int i = 0; i < numbers.length; i++){
    if(numbers.length -1==i)
       System.out.print(i+ ": " + numbers[i]);
     else 
       System.out.print(i + ": " + numbers[i] + ", ");          
}
System.out.print("]");
for(int i=0;i
系统输出打印(“[”);
for(int i=0;i
对您的代码进行一些小的更改:

public static void array(int[] numbers) {
        //Check if the array isn't empty, you know, just in case ;)
        if (numbers.length == 0) {
            return
        }
        System.out.print("[ 0");
        for (int i = 0; i < numbers.length - 1; i++){
            System.out.print(": " + numbers[i] + ", " + (i+1));
        }
        System.out.print(": " + numbers[numbers.length-1] + " ]");
}
公共静态无效数组(int[]个){
//检查数组是否为空,以防万一;)
如果(number.length==0){
返回
}
系统输出打印(“[0”);
对于(int i=0;i
导致
[0:-5,1:-2,2:12,3:7,4:3,5:15,6:10]

对您的代码进行一些小的更改:

public static void array(int[] numbers) {
        //Check if the array isn't empty, you know, just in case ;)
        if (numbers.length == 0) {
            return
        }
        System.out.print("[ 0");
        for (int i = 0; i < numbers.length - 1; i++){
            System.out.print(": " + numbers[i] + ", " + (i+1));
        }
        System.out.print(": " + numbers[numbers.length-1] + " ]");
}
公共静态无效数组(int[]个){
//检查数组是否为空,以防万一;)
如果(number.length==0){
返回
}
系统输出打印(“[0”);
对于(int i=0;i