import org.junit.Test;

import java.util.ArrayList;

/**
* @author: Johnny
* @date: 2021/11/12 11:17:24
* @description: 测试数组超界异常 IndexOutOfBoundsException ArrayIndexOutOfBoundsException
* https://blog.csdn.net/be_happy_mr_li/article/details/53302411
*/ public class ArrayExceptionTest {
@Test
public void test004() {
ArrayList<String> array = new ArrayList<String>();
array.add(0,"hello world");
array.add(1,"hello world"); int index = array.indexOf("22"); //-1
System.out.println(index);
//array.set(index,"hello world"); //java.lang.ArrayIndexOutOfBoundsException: -1
array.add(index,"hello world");//java.lang.IndexOutOfBoundsException: Index: -1, Size: 2
} @Test
public void test003() {
ArrayList<String> array = new ArrayList<String>();
array.set(0,"hello world");//java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
} @Test
public void test002() {
ArrayList<String> array = new ArrayList<String>();
//array.add(0,"hello world");//正常
array.add(1,"hello world");//java.lang.IndexOutOfBoundsException: Index: 1, Size: 0
}
}

[Java SE]数组超界异常分析(IndexOutOfBoundsException/ArrayIndexOutOfBoundsException)的更多相关文章

  1. Java虚拟机三:OutOfMemoryError异常分析

    根据Java虚拟机规范,虚拟机内存中除过程序计数器之外的运行时数据区域都会发生OutOfMemoryError(OOM),本文将通过实际例子验证分析各个数据区域OOM的情况.为了更贴近生产,本次所有例 ...

  2. 【Java SE进阶】Day05 异常,线程

    一.异常 1.概念 程序执行过程中,出现非正常情况导致JVM的非正常停止 本身是一个类,产生异常即创建并抛出一个异常对象 Java处理异常的方式是进行中断处理 异常非语法错误,语法错误直接不会产生cl ...

  3. Java SE之反射技术[Class,Field](一)

    一.什么是反射? 反射库(Reflection Library)提供了一个非常丰富且精心设计的工具集,以便编写能够动态操纵Java代码的程序.这项功能被大量地应用在JavaBeans中,它是Java组 ...

  4. Android异常分析(转)

    关于异常 异常? 异常就是一种程序中没有预料到的问题,既然是没有预料到的,就可能不在原有逻辑处理范围内,脱离了代码控制,软件可能会出现各种奇怪的现象.比如:android系统常见异常现象有应用无响应. ...

  5. Java学习笔记35(异常)

    代码在运行中发生的问题就是异常 java中把多种异常封装多个类,当程序出现问题时候,就会创建异常类对象并且抛出相关信息 异常体系: Throwable类是Java中所有错误或异常的父类 Throwab ...

  6. java与java web数组括号的不同

    由于之前学JAVA SE数组时习惯了数组括号的写法,到了Web这里写了有点不太习惯了,赶快写篇博客加深一下印象哈 一. java和java web中的数组的不同 java: int[] arr = n ...

  7. java se系列(四) 函数、数组、排序算法、二分法、二维数组

    1 函数 1.1  数的概述 发现不断进行加法运算,为了提高代码的复用性,就把该功能独立封装成一段独立的小程序,当下次需要执行加法运算的时候,就可以直接调用这个段小程序即可,那么这种封装形形式的具体表 ...

  8. java.net.SocketException:Software caused connection abort: recv failed 异常分析 +socket客户端&服务端代码

    java.net.SocketException:Software caused connection abort: recv failed 异常分析 分类: 很多的技术 2012-01-04 12: ...

  9. Java ConcurrentModificationException 异常分析与解决方案

    Java ConcurrentModificationException 异常分析与解决方案http://www.2cto.com/kf/201403/286536.html java.util.Co ...

  10. Java 异常分析

    Java 异常分析 本文是对以下内容的分析: Java异常设计 Java 异常分类 Java异常可以告诉什么问题 Java异常处理最佳实践 Java Exception 是为了处理应用程序的异常行为而 ...

随机推荐

  1. Executor框架详解

    Executor框架详解 java的线程既是工作单元,也是执行机制.从jdk5开始,把工作单元与执行机制分离开来.工作单元包括Runnable和Callable,而执行机制由Executor框架提供. ...

  2. C++ 用运算符重载 实现复数相加

    #include "stdafx.h" #include <iostream> using namespace std; class Complex {public: ...

  3. 修改allure图标和标题

    allure的logo更换步骤 1.找到allure安装目录,进入目录如:D:\Program Files\allure-2.17.3\plugins\custom-logo-plugin\stati ...

  4. nodejs中router的使用

    一.划分文件使用Router 创建一个routes目录,专门用于放置路由文件,通过module.exports导出供外部使用. // 引入类 const Koa =require('koa'); // ...

  5. jsp+servlet+mysql

    前后端很容易因为编码的问题引起乱码  所以一定要搞清charset的几个值 charset=iso-8859-1 西欧的编码,英文编码 charset=gb2312 中文编码 charset=utf- ...

  6. IntelliJ IDEA 2021.2 暴力破解

    注意 本教程适用于 IntelliJ IDEA 2021.2 以下所有版本,请放心食用~ 本教程适用于 JetBrains 全系列产品,包括 Pycharm.IDEA.WebStorm.Phpstor ...

  7. logrotate 切割Tomcat的catalina.out文件

    使用logrotate进行切割.   在/etc/logrotate.d下,新建tomcatrotate,编辑tomatrotate,写入如下内容:    /usr/local/tomcat/logs ...

  8. 获取UndeclaredThrowableException异常信息

    一.堆栈错误信息如下,要获取红框里的message 说明:ValidationException为自定义异常,继承自Exception 二.代码如下

  9. 使用scrollIntoView 使某元素滚动到指定位置

    var el = document.getElementById('A'); el.scrollIntoView('true'); 知识: element.scrollIntoView(); // 使 ...

  10. 函数XLOOKUP

    这个公式非OFFICE 365用户需要选中执行范围后 按Ctrl+Shift+Enter三键 (因为不支持公式溢出) XLOOKUP函数的基本结构是: =XLOOKUP(lookup_value,lo ...