了解Android中的Arraylist IndexOutOfBoundsException

lil*_*'ms 3 java android arraylist indexoutofboundsexception

IndexOutOfBoundsExceptionArraylist 我使用的任何东西中获得了很多.大多数时候它工作正常,但有时我Arraylists在我的项目上使用这个恼人的错误.

主要原因始终是

java.util.ArrayList.throwIndexOutOfBoundsException: Invalid index 3, size is 3
Run Code Online (Sandbox Code Playgroud)

要么

java.util.ArrayList.throwIndexOutOfBoundsException: Invalid index 0, size is 0 
Run Code Online (Sandbox Code Playgroud)

帮助我理解这个错误的主要原因,因为无论我搜索了多少答案,他们都没有完全帮助我.

Pan*_*mar 13

java.util.ArrayList.throwIndexOutOfBoundsException:索引3无效,大小为3

这意味着你有ArrayList,它有3个元素,你可以得到每个元素,如0,1,2位置.并且您正在尝试读取ArrayList中不存在的第4个元素.

java.util.ArrayList.throwIndexOutOfBoundsException:索引0无效,大小为0

这意味着您有一个空的ArrayList,并且您正在尝试读取第一个元素.


ArrayIndexOutOfBoundsException - 示例

数组索引超出范围异常是由于程序试图访问数组限制之外的位置的元素而引发的Java异常,因此单词"Out of bounds".换句话说,程序试图访问数组边界之外的索引处的元素.要理解数组边界,让我们考虑下图:

在此输入图像描述

上图包含一个由7个元素组成的数组.数组中的每个元素都有自己的索引/位置.在Java中,索引始终以0开头,以数组-1的长度结束.例如,上面的数组由7个元素组成,因此它的索引从0开始,以6(7-1)结束.尝试访问索引小于0或大于6的元素将导致Java抛出ArrayIndexOutOfBoundsException.


阅读有关ArrayIndexOutOfBoundsException的更多信息- 示例,原因和修复