马上要做的项目中有一个需求是在通过Excel导入数据到数据库的时候过滤掉其中的重复元素,最终我选择了使用java集合中一些集合的固有特性来解决。解决本问题的一个关键问题是:java中的Set集合中的内容是不能有重复的。
技术预研:
1、将Excel中的数据读取到一个list集合当中(具体方法见我的前一篇文章,Excel文件中数据的写入与导出)。
2、将list中的元素拷贝到一个Set集合当中,使用Set集合的addAll(Collection<? extends E> c) 如果 set 中没有指定 collection 中的所有元素,则将其添加到此 set 中(可选操作)。
实例代码:
public class ListColne {
public static void main(String[] args) {
List list=new ArrayList();
Set set=new TreeSet();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("e");
list.add("f");
list.add("a");
list.add("c");
list.add("e");
//去掉list中的重复元素
set.addAll(list);
Iterator iterator=set.iterator();
while(iterator.hasNext()){
System.out.println("便利iterator中的元素==="+iterator.next());
}
}
}