for(int i=0;i<charset.size();i++)
{
for(int j=0;i<charset.size();j++)
{
for(int k=0;k<charset.size();k++)
{
String plaintext= charset.get(i)+charset.get(j)+charset.get(k);
String hashtext=CreateHash.returnString(plaintext);
BufferedWriter bw = new BufferedWriter(new FileWriter("/root/MD5List.txt", true)); //opens file
bw.write(plaintext+" = "+hashtext);
bw.newLine();
bw.close();
}
}
}
arraylist
大小是 10。当我运行这个程序时,我得到一个堆栈跟踪:
线程“主”java.lang.IndexOutOfBoundsException 中的异常:索引:10,大小:10 在 java.util.ArrayList.rangeCheck(ArrayList.java:571) 在 java.util.ArrayList.get(ArrayList.java:349) 在MD5HashTable.Hash.main(Hash.java:57) Java 结果:1
由于变量 k 明显小于 的大小arraylist
,为什么会出现此错误?