现在的位置: 首页 > 综合 > 正文

借助Set去除List中的重复信息

2013年08月25日 ⁄ 综合 ⁄ 共 1047字 ⁄ 字号 评论关闭
	//去除重复信息
	protected List  remo(List list){
		 List newList = new ArrayList();
		 Set set = new HashSet();
		 for (Iterator iter = list.iterator(); iter.hasNext();) {
	          Object element = iter.next();
	          if (set.add(element))
	             newList.add(element);
	       } 
	      list.clear();
	      list.addAll(newList);
	      return list;
	}

Collection是最基本的集合接口,声明了适用于JAVA集合(只包括Set和List)的通用方法。Set 和List 都继承了Conllection,Map没有。
Collection接口的方法:  
boolean add(Object o)   :向集合中加入一个对象的引用 
void clear()          :删除集合中所有的对象,即不再持有这些对象的引用 
boolean isEmpty()           :判断集合是否为空 
boolean contains(Object o): 判断集合中是否持有特定对象的引用 
Iterator iterator()              : 返回一个Iterator对象,可以用来遍历集合中的元素 
boolean remove(Object o):从集合中删除一个对象的引用 
int size()                               :返回集合中元素的数目 
Object[] toArray()                 :返回一个数组,该数组中包括集合中的所有元素 
关于:Iterator() 和toArray() 方法都用于集合的所有的元素,前者返回一个Iterator对象,后者返回一个 
包含集合中所有元素的数组。
 
Iterator接口声明了如下方法: 
hasNext(): 判断集合中元素是否遍历完毕,如果没有,就返回true 
next()       :返回下一个元素 
remove():从集合中删除上一个有next()方法返回的元素。 

Set(集合): 
Set是最简单的一种集合。集合中的对象不按特定的方式排序,并且没有重复对象。 
Set接口主要实现了两个实现类: 
HashSet : HashSet类按照哈希算法来存取集合中的对象,存取速度比较快 
TreeSet   : TreeSet类实现了SortedSet接口,能够对集合中的对象进行排序。

抱歉!评论已关闭.