发布于2022-08-02 05:11 阅读(1476) 评论(0) 点赞(18) 收藏(1)
对于刚开始学习Java的大部分人来说,在使用数组的过程中,经常会遇到数组下标越界的异常。下面壹哥就以一个实际案例来给大家进行说明:
- public class ArrayTest {
- public static void main(String[] args) {
- int[] numbers = {1, 2, 3, 4, 5};
- int number = numbers[5];
- System.out.println(number);
- }
- }
运行上面的程序,会出现如下异常:
- Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5
-
- at ArrayTest.main(ArrayTest.java:4)
很多初学者遇到异常时通常都不会查看异常信息,而是通过看代码来找出原因。当然,在代码很少的情况下,这是可以的。但这样会形成一个不良的习惯:在后续编码的过程中经常忽视异常信息,直接在编码中查找异常,在代码很多的情况下,找出异常的效率极低,还可能无法找到异常引发的原因。
正确解决异常的方式应该是首先查看异常信息,比如该案例中出现了ArrayIndexOutOfBoundsException
异常,这是一个数组下标超出范围的异常,也就是业内人士常说的数组下标越界。这个异常出现的位置如下:
at ArrayTest.main(ArrayTest.java:4)
由这一行异常信息确定。也就是在 ArrayTest
这个类的第4行出现了数组下标越界异常。那么去查看第4行代码:
int number = numbers[5];
既然是数组下标越界,那就是说访问数组 numbers
中下标为5的元素时,出现的异常。说明这里的下标5超出了数组 numbers
的下标范围。而数组 numbers
的定义如下:
int[] numbers = {1, 2, 3, 4, 5};
由此可以看出,数组 numbers
的下标取值范围是0~4。而在使用过程中用了下标5,因此造成了数组下标越界异常。
为什么这里下标的取值范围是0~4, 这是由数组的基本特性决定的,这些都是基础知识,这块儿薄弱的可以在网上查阅资料进行学习,比如千锋教育官网就有一些免费的学习资料,当然你也可以在B站上找到这套资料,完全免费,为初学者打牢基础提供的一些干货。
我们在处理异常的时候,一定要注意查看异常信息,快速定位出异常的位置,找到问题,解决问题。现在你知道这个异常该怎么解决了吗?如果还有什么别的问题,可以在评论区给壹哥留言哦。
原文链接:https://blog.csdn.net/syc000666/article/details/125271365
作者:你看我可爱不
链接:http://www.javaheidong.com/blog/article/471979/67f472299405dac79653/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!