我有:
List<Object> list = ((Dao)dao).findAll();
for(int i; i < list.size(); i++) {
list.getIndex(i);
list.getIndex(i+1);
}
这可能吗? 我正确使用迭代?
答案 0 :(得分:1)
您可以这样做,但为了防止异常,您应该使用for (int i = 0 ; i < list.size() - 1; i++)
。
您可以使用此collate
获取非重叠对:
[1, 2, 3, 4, 5, 6, 7, 8, 9].collate(2).each {
def (first, second) = it
println "$first $second"
}
将打印:
1 2
3 4
5 6
7 8
9 null
答案 1 :(得分:1)
如果你想比较邻居,你可能会更好:
for(int i = 1; i < list.size() ; i++) {
list.getIndex(i - 1)
list.getIndex(i)
}
或者我认为你可以这样做:
list.collate( 2, 1, false ).each { a, b ->
println "$a $b"
}