Java迭代器contains的問題

功能: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;
	}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章