当前位置:   article > 正文

ArrayIndexOutOfBoundsException 异常报错原因及解决方案_arrayindexofbounds是什么异常

arrayindexofbounds是什么异常


一、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;
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

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]);
        }

    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

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

二、ArrayIndexOutOfBoundsException解决方案

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

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

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

案例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]);
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

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

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]);
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/372819
推荐阅读
相关标签
  

闽ICP备14008679号