【发布时间】:2013-04-12 13:53:46
【问题描述】:
这段代码抛出
线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 1
在最后一行。是bug还是什么? (JDK 7)
int ar[] = {1,2,3};
List arList = Arrays.asList(ar);
arList.set(1,8);
【问题讨论】:
-
一条建议:“永远不要把它归咎于工具。几乎总是因为你使用它的方式。”
-
1) “是 JDK 的错误吗?” 应该是 “是 JRE 的错误吗?”,除非这是编译问题。 2) 新手发现 API 错误的几率相对于新手在代码中出错的几率约为 1,000,000 分之一。
-
安德鲁,这些赔率有科研数据支持吗? ;)
-
ArrayIndexOutofBoundsException 是数组索引的错误使用,不是 JDK 中的错误。
-
因为
Arrays.asList(int[]{})returnsList<int[]>而不是List<Integer>甚至List<int>。
标签: java runtime-error indexoutofboundsexception