Java每两个元素成对地迭代List

时间:2016-08-18 08:49:52

标签: java collections iterator

我有一个ArrayList,我想迭代它每2个元素,如下所示:([1,2],[3,4],[5,6])

目前我能够像这样迭代列表:([1,2],[2,3],[3,4])但这不是我想要的结果。

这是我的代码:

Iterator<MyObject> iterator = myList.iterator();
        if (iterator.hasNext()) {
            MyObject o1 = iterator.next();
            while (iterator.hasNext()) {
                final MyObject o2 = iterator.next();
                //Do my stuff
                o1 = o2;
            }
        }

我知道这应该很简单,但我不会看到它。

我从此链接获得了代码:Link 1

我也见过这些帖子:

Link 2

Link 3

1 个答案:

答案 0 :(得分:1)

试试这个:

for(int i = 0; i < list.size(); i+=2) {
    list.get(i);
    list.get(i+1);
}

因为你必须检查你是否不超过列表的大小。