一. 前言
最近很多初学java的小伙伴,甚至有些学习到或框架阶段的小伙伴跑来问健哥,该如何解决Java中的s 数组越界异常。既然这个异常这么常见,那么健哥就在这里手把手地教大家分析解决掉这个问题,让你以后不再被这个异常给吓退。
二. 异常现象
首先我们来看看下面这段代码。这段代码运行时就会出现数组越界异常。
package test;
/**
* @author 千锋健哥
*/
public class TestArrayException {
public static void main(String[] args) {
String[] strArray = {"千锋健哥", "数组越界演示"};
System.out.println("=======" + strArray[2]);
}
}
/**
* @author 千锋健哥
*/
public class TestArrayException2 {
public static void main(String[] args) {
String[] strArray = {"千锋健哥", "数组越界演示"};
for(int i = 0; i <= 9; i++) {
System.out.println("===打印数组中第"+i+"个元素的值===" + strArray[i]);
}
}
}
运行结果:
三. 异常原因
那么为什么上面的代码会出现这个异常呢?健哥一步一步地来给各位小伙伴,分析解释一下产生这个异常的原因。
四. 解决办法
既然问题的原因找到了,那么我们就很容易解决这个问题了,解决过程如下:
五. 总结
所谓的数组越界异常,其实就是代码中有地方调用了数组中的某个元素,然后该元素的索引超过了数组的最大长度,但该元素在数组中并不存在,从而报错。所以我们只需要找到调用数组元素的代码所在,将调用的索引号改为数组中存在的索引号即可。
声明:
1、本站发布的内容部分购买于网络,仅供读者学习与参考,如有侵权,请联系站长进行删除处理。
2、本站一切资源不代表本站立场,不代表本站赞同其观点和对其真实性负责。
3、本站仅分享资源,以极低的价格降低大家被割韭菜的损失。本站无法保证资源质量,所以介意的小伙伴请勿下单!
4、资源大多存储在云盘,如发现链接失效,请联系站长第一时间更新。