java数组越界

新手上路,请多包涵

java正常访问数组最后一个成员,报数组越界。

阅读 2.9k
5 个回答

你这个问题过于基础,别人可以给你答案,但对于这类基础性的知识点,更好的方式是找本Java基础书籍(比如Thinking In Java),认真学习基础知识并做一些刻意练习,这样可以帮助你有效且系统地掌握Java.

新手上路,请多包涵

当你使用不合法的索引访问数组时会报数组越界这种错误

下标减1了吗?

写个代码验证一下即可, 如果有问题可以贴源码和错误信息

public class Main {
    public static void main(String[] args) {
        int length = 10;
        
        //创建length长的的数组, 数组下标从0开始, 依次为0,1,2···length-1, 总共length个
        int[] intArr = new int[length];
        intArr[length - 1] = 233;//为数组最后一项赋值233
        System.out.println(intArr[length - 1]);//打印233
        System.out.println(intArr[length]);//数组越界, 抛出异常
    }
}

那就是数组越界了,看下数组长度是不是小于了查询的数组下标

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题