Java数组中两个常见问题

数组操作中两个常见问题

大家在操作数组的过程中,不可能一帆风顺,这里列举两个最常遇到的问题

  • 数组下标越界异常(ArrayIndexOutOfBoundsException)
    • 这是一个单独针对数组的异常
    • 原因是访问了一个不存在的索引,索引不合法
public class Demo {
    public static void main(String[] args) {

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

    }
}

在这里插入图片描述

  • 空指针异常(NullPointerException,简称NPE)
    • 引用数据类型都会有这个异常,包括数组,String等
    • 原因是当引用数据类型的引用指向了null(空常量),指向了虚无
      • 这时如果仍然想通过引用操作堆上对象,就会报错
        在这里插入图片描述

需要注意的地方:

  • 空指针异常不是数组独有,而是引用类型都会有的错误

  • 以后大家会天天和引用数据类型打交道,也会每天和空指针异常打交道

  • 学生引用类型,教师类

  • 避免空指针异常是我们首要考虑的问题

    • 避免空指针异常最简单的方式就是if判断

数组长度为0和数组是空(null)有啥区别?

 int[] arr1 = {};
   System.out.println(arr1.length);

在这里插入图片描述

    int[] arr2 = null;
   System.out.println(arr2.length);
   

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值