ArrayIndexOutOfBoundsException 异常报错原因及解决方案

导读:本篇文章讲解 ArrayIndexOutOfBoundsException 异常报错原因及解决方案,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com


一、ArrayIndexOutOfBoundsException异常报错原因分析

ArrayIndexOutOfBoundsException 数组下标越界异常

异常报错信息案例:
案例1:
请添加图片描述
案例2:
在这里插入图片描述

异常错误描述:

错误原因:数组下标越界异常;超出了数组下标的取值范围,数组下标的取值范围是 [0,arr.length-1],即 0 ~ 数组的长度-1,而上述的两个错误都是我们在访问数组元素时,超出了数组下标的取值返回。

ArrayDemo
案例1:

public class ArrayDemo {
    public static void main(String[] args) {
        int[] arr = new int[5];
        arr[5] = 100;
    }
}

ArrayDemo
案例2:

public class ArrayDemo {
    public static void main(String[] args) {

        int[] arr = new int[5];
        for (int i = 0; i <= arr.length; i++) {
            System.out.println(arr[i]);
        }

    }
}

上述为错误代码,项目结构见上述两张图片

二、ArrayIndexOutOfBoundsException解决方案

解决思路:这里,我们只需要检查我们在访问的数组元素,何时出现了数组下标超出了其取值范围并改正即可

案例1:
在这里插入图片描述

public class ArrayDemo {
    public static void main(String[] args) {
        int[] arr = new int[5];
        arr[4] = 100;
    }
}

案例2:
第一种方式:
在这里插入图片描述

public class ArrayDemo {
    public static void main(String[] args) {
        int[] arr = new int[5];
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }
}

第二种方式:
在这里插入图片描述

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/107648.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!