Java索引越界异常Exception java.lang.IndexOutOfBoundsException的解决

 更新时间:2023年06月16日 09:41:55   作者:SUMMERENT  
本文主要介绍了Java索引越界异常Exception java.lang.IndexOutOfBoundsException的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1、IndexOutOfBoundsException 是索引越界异常

表示某种索引(例如数组、字符串或向量)超出范围

举例:请看下面代码

 public static void main(String[] args) {
        List<Object> list = new ArrayList();
        list.add("添加的第一个元素python");
        list.add("添加的第二个元素java");
        list.add("添加的第三个元素Javascript");
        list.add("添加的第四个元素C++");
        System.out.println(list.size());   //打印结果为:4
        for (int i = 0;i <= list.size();i++) {
            System.out.println(list.get((i)));
        }
 }

运行后报错:

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 4, Size: 4
主要是因为:循环条件是 i  <= list.size()  然后list.get(i) 报错

解析:如果list添加数据是n条,因为索引是从0开始的,所以取最后一条数据应该索引为n-1,如果索引大于或等于n就报索越界异常:

2、ArrayIndexOutOfBoundsException :数组索引越界异常

表示使用非法索引访问了数组。索引为负数或大于或等于数组的大小。

  for (int i = 0;i <= list.size();i++) {
            System.out.println(list.get((i-1)));
      }

就上例中,list.get(-1)  就会报错,所以就容易找出问题了

到此这篇关于Java索引越界异常Exception java.lang.IndexOutOfBoundsException的解决的文章就介绍到这了,更多相关Java索引越界异常内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Spring框架学习之AOP详解

    Spring框架学习之AOP详解

    这篇文章主要介绍了Spring框架学习之AOP详解,文中有非常详细的代码示例,对正在学习Spring框架的小伙伴们有一定的帮助,需要的朋友可以参考下
    2021-05-05
  • 解决MyBatis中为类配置别名,列名与属性名不对应的问题

    解决MyBatis中为类配置别名,列名与属性名不对应的问题

    这篇文章主要介绍了解决MyBatis中为类配置别名,列名与属性名不对应的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Java Apache common-pool对象池介绍

    Java Apache common-pool对象池介绍

    这篇文章主要介绍了Java Apache common-pool对象池介绍,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-09-09
  • Java switch case语句的用法及常见问题

    Java switch case语句的用法及常见问题

    这篇文章主要介绍了Java switch case语句的用法及常见问题,Java中的switch语句是一种多分支选择结构,用于替代多个if...elseif的情况,它根据某个变量的值,执行匹配分支中的代码块,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-04-04
  • Spring代理对象导致的获取不到原生对象注解的解决

    Spring代理对象导致的获取不到原生对象注解的解决

    本文主要介绍了Spring代理对象导致的获取不到原生对象注解的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • Java数据结构之二叉查找树的实现

    Java数据结构之二叉查找树的实现

    二叉查找树(亦称二叉搜索树、二叉排序树)是一棵二叉树,且各结点关键词互异,其中根序列按其关键词递增排列。本文将通过示例详细讲解二叉查找树,感兴趣的可以了解一下
    2022-03-03
  • SpringBoot上传文件到本服务器 目录与jar包同级问题

    SpringBoot上传文件到本服务器 目录与jar包同级问题

    这篇文章主要介绍了SpringBoot上传文件到本服务器 目录与jar包同级问题,需要的朋友可以参考下
    2018-11-11
  • Java标准库中Thread类的基本用法总结大全

    Java标准库中Thread类的基本用法总结大全

    Thread类是Java中用于表示线程的类,允许程序并发执行,线程是程序执行的最小单位,多个线程可以共享程序的资源,这篇文章主要介绍了Java标准库中Thread类基本用法的相关资料,需要的朋友可以参考下
    2026-01-01
  • 使用SpringBoot项目导入openfeign版本的问题

    使用SpringBoot项目导入openfeign版本的问题

    这篇文章主要介绍了使用SpringBoot项目导入openfeign版本的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • 实例分析Java单线程与多线程

    实例分析Java单线程与多线程

    本篇文章通过代码实例给大家详细讲述了Java单线程与多线程的相关原理和知识点总结,需要的朋友可以学习下。
    2018-02-02

最新评论