请看一下代码示例:
在reduce中有如下代码
String s = values.next();
while(values.hasNext()){
String s2 = values.next().toString();
output.collect(new Text(s+s2),...)
}
s始终是values.next()的数值,也就是说,value.next()的引用会被重用,而其值会随着迭代器的迭代进行变化,建议是,在使用value.next()时,进行toString()的操作,获得其复制的值。