1

私は持っている:

List<Object> list = ((Dao)dao).findAll();
for(int i; i < list.size(); i++) {
    list.getIndex(i);
    list.getIndex(i+1);
}

これは可能ですか?反復を正しく使用していますか?

4

2 に答える 2

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
于 2013-07-09T16:59:50.383 に答える
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"
}
于 2013-07-09T17:01:57.237 に答える