我正在尝试创建一个执行命令的程序。我正在用空间分割命令。
在控制台中,如果我键入(X 2 C)
,它会打印前两个命令,然后清除所有以前的命令。
但如果我只是想打印以前的历史命令而不清除ex) (X 1)
的命令,则会出现java.lang.ArrayIndexOutOfBoundsException:
答案 0 :(得分:2)
在访问Split[2]
之前,请检查Split.length >2
答案 1 :(得分:2)
当您输入["X" , "1"]
并将其拆分为数组时,结果数组将为Split[2]
。由于数组从0开始,数组的大小为2,其中" X"具有索引0和" 1"指数1。
尝试访问ArrayIndexOutOfBoundsException
时,您试图访问一个不存在的值,并且索引超出了数组的长度,因此得到{{1}}。
在尝试访问某些索引之前,您应该始终确保您尝试访问的索引在数组的大小范围内。