什么是通过二维 ArrayList> 的方法,对于特定的行你减去一个(但不是所有的,只是基本上在此之前有一个 boolean T/F 检查,如果 boolean 是 T 则执行此操作)我一直想出的是本质上最终成为无限循环的东西
只能对列表的特定行进行更改...即:(为了使其正常工作,elig.get(0) 为 false)
如果我有: [[1, 2, 3], [4, 5, 2], [2, 1, 1], [3, 6, 1], [1, 6, 3]] 我想得到(例如。 )在
第一行和最后一行是 -1 所以: [[0, 1, 2], [4, 5, 2], [2, 1, 1], [3, 6, 1], [0, 5, 2]]
等等
我现在的代码是:(我把它隔离了,真的不知道为什么这不起作用?
for(int j=0; j<(bigArr.size()); j++) {
for(int k=0; k<(bigArr.get(0).size()); k++) {
if(elig.get(0) == false) {
bigArr.get(j).set(k, ballotArr.get(j).get(k)-1);
}
}
System.out.println(ballotArr);
}
最佳答案
就像拥有ArrayList的ArrayList一样。因此,不是像 arr[row][column] 那样引用普通数组中的特定元素,而是 arr.get(row).get(column)
//loops through first dimension
for(int row=0;row<myList.size();row++) {
//check that T/F you mentioned
if(myBoolean) {
//loop through second dimension
for(int i=0;i<myList.get(row).size();i++) {
//subtract 1 from everything in second dimension
myList.get(row).set(i, myList.get(row).get(i)-1);
}
}
}
关于java - 改变多维列表的特定行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9090657/