数组的length获取的是实际长度还是声明长度

int[] arr = new int[10];
arr[0] = 1;其他都是null
arr.length结果是10还是1
如何获取实际长度呢?

在java里,数组一旦被声明,数组元素就自动初始化了,值为0,不会有null,实际长度为10

上面,打错了,是声明长度为10,想知道实际长度,就判断0吧

是10,实际长度就遍历判空计算

10,实际你就遍历对值作判断

arr.length结果是10

 public static void main(String[] args) {
        int[] arr = new int[10];
        arr[0] = 1;
        int length = 0;
        for(int i = 0 ; i < arr.length ; i++){
            if(arr[i] != 0){
                length++;
            }
        }
        System.out.println(length);
    }

这样的话,结果是1

10,length取的是定义好的长度