功能:ArrayList去除集合中字符串的重复值(字符串的内容相同),思路:创建新集合方式。
第一种编译运行没问题,第二种写法出错,原因是不可以两次使用it.next()。
错误提示:Exception in thread "main" java.util.NoSuchElementException
public static ArrayList noRepeat2(ArrayList list){
ArrayList newlist = new ArrayList();
Iterator it = list.iterator();
while(it.hasNext()){
Object obj = it.next();
if(!newlist.contains(obj)){
newlist.add(obj);
}
}
return newlist;
}
public static ArrayList noRepeat2(ArrayList list){
ArrayList newlist = new ArrayList();
Iterator it = list.iterator();
while(it.hasNext()){
if(!newlist.contains(it.next())){
newlist.add(it.next());
}
}
return newlist;
}
【Java迭代器contains的问题】