首页 > 解决方案 > 断言语句后的 ArrayIndexOutOfBoundsException

问题描述

我有一个String数组tmpString[] tmp = line.split(",");

然后,

java.lang.ArrayIndexOutOfBoundsException: 3上了代码

assert tmp.length == 4;
int r = Integer.parseInt(tmp[3]);   ----error line

java.lang.ArrayIndexOutOfBoundsException: 2代码

assert tmp.length == 3;
String name = tmp[2];    -----error line

我不认为这个错误是合理的。断言语句正确传递.length=4,没有元素索引的数组如何3?谁能告诉我为什么...

标签: javastringassert

解决方案


如评论中所述,这里的问题是您没有激活 JVM 选项中的断言

在命令行中java MyProgram -ea

对于 Eclipse,请参阅答案。

对于 IntelliJ,请参阅答案。


推荐阅读