如何使我的未填充的int数组不打印0?

时间:2017-10-21 13:36:35

标签: java

    int[] arr = new int[5];
    arr[0] = 23;
    arr[1] = 123;
    arr[2] = 255;

    printArray(arr);
}

static void printArray(int...arr) {
    for (int T : arr)
        System.out.println(T);
}

打印出来:

23
123
255
0
0

那么如何避免不打印未填充的元素呢?

1 个答案:

答案 0 :(得分:1)

Java中的原语不可为空。创建基本整数但不为其赋值时,it will default to 0

可以创建一个{em} 可以为空的Integer数组,然后使用if来查看它们是否为null,如下所示:

public static void main(String[] args) {
     Integer[] arr = new Integer[5];
     arr[0] = 23;
     arr[1] = 123;
     arr[2] = 255;

     printArray(arr);
}

public static void printArray(Integer... arr){
    for(Integer t : arr) {
        if (t != null) {
            System.out.println(t);
        }
    }
}