MR中的iterator与ArrayList的iterator区别以及用法
背景:最近在写MR程序时遇到一个奇怪的问题,利用iterator迭代器遍历数据添加到List中时,保存在List中的元素都是最后遍历的数据。
原因:因为MR中的iterator.next()方法返回的是数据的引用,每次向List中添加都是把引用传入而ArrayList中的iterator.next()方法返回的是数据,所以才会导致如上情况。
解决:每次迭代重新创建一个对象加入List中即可。
...
原创
2019-03-09 09:42:22 ·
241 阅读 ·
0 评论