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索引越界异常内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java中tomcat的80端口被占用问题解决

    java中tomcat的80端口被占用问题解决

    java中tomcat的80端口被占用问题解决,需要的朋友可以参考一下
    2013-03-03
  • ​​​​​​​Java公平锁和非公平锁的区别

    ​​​​​​​Java公平锁和非公平锁的区别

    本文介绍​​​​​​​Java公平锁和非公平锁区别,公平锁是每个线程获取锁顺序是按照线程访问锁的先后顺序获取的,最前面的线程总是最先获取到锁;而非公平锁是每个线程获取锁的顺序是随机的,并不会遵循先来先得的规则,所有线程会竞争获取锁,下文内容需要的朋友可以参考下
    2022-05-05
  • 如何从Java接口的角度切入静态工厂模式

    如何从Java接口的角度切入静态工厂模式

    静态工厂模式是一种改进的获取实例的方法。通常我们会使用new关键字调用类的构造方法来创建一个对象。静态工厂可以根据用户传入的参数来动态地实例化对象,避免一次性实例化所有对象所带来的性能浪费,同时也降低了耦合性。
    2021-06-06
  • Tomcat安装配置及Eclipse配置详解

    Tomcat安装配置及Eclipse配置详解

    给大家介绍一下Tomcat安装配置及Eclipse配置的全部图文过程,如果你对这个还有不明白,一起跟着小编学习下。
    2017-11-11
  • Spring Boot 深入分析AutoConfigurationImportFilter自动化条件配置源码

    Spring Boot 深入分析AutoConfigurationImportFilter自动化条件

    这篇文章主要分析了Spring Boot AutoConfigurationImportFilter自动化条件配置源码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-07-07
  • Java中JDBC连接数据库详解

    Java中JDBC连接数据库详解

    本文主要介绍了JDBC连接数据库的相关知识,具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • 使用Spring Boot上传文件功能

    使用Spring Boot上传文件功能

    上传文件是互联网中常应用的场景之一,最典型的情况就是上传头像等,今天就带着大家做一个Spring Boot上传文件的小案例,感兴趣的朋友跟随脚本之家小编一起学习吧
    2018-01-01
  • Java使用正则表达式演示电话与邮箱格式

    Java使用正则表达式演示电话与邮箱格式

    本文详细讲解了Java正则表达式的用法,举例演示电话和邮箱格式,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • Springboot 接口需要接收参数类型是数组问题

    Springboot 接口需要接收参数类型是数组问题

    这篇文章主要介绍了Springboot 接口需要接收参数类型是数组问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Java中Integer的parseInt和valueOf的区别详解

    Java中Integer的parseInt和valueOf的区别详解

    这篇文章主要介绍了Java中Integer的parseInt和valueOf的区别详解,nteger.parseInt(s)是把字符串解析成int基本类型,Integer.valueOf(s)是把字符串解析成Integer对象类型,其实int就是Integer解包装,Integer就是int的包装,需要的朋友可以参考下
    2023-11-11

最新评论