我最近写了一个方法来加入一些我在一些文本文件中的值然后修改我想要的值。在我写的方法中,我在下面的代码中得到了“索引数组”:
String[] s = new String[] {"Value1", "Value2",...}
List<List<String[]>> Temp = new ArrayList();
for (List<String[]> i : JL) {
List<String[]> _Temp = new ArrayList();
for (String[] x: i) {
for (String y : s) {
if (x[0].equals(y))
_Temp.add(x);
}
}
_Temp.get(10)[0] = "Some Value"; // Index out of the array error (_Temp lenght is 12)
// _Temp.get(10) has 2 indexes
Temp.add(_Temp);
}
这是在我删除_Temp.get(10)[0] = "Some Value";
并执行以下代码时,它有效:
for (List<String[]> x : Temp) {
x.get(10)[0] = "Some Value";
}
这是怎么发生的?两种修改值的方法完全相同。
演示:
答案 0 :(得分:2)
嗯..
_Temp ArrayList
Temp
,而失败的代码段适用于_Temp