当前位置: 代码迷 >> Java Web开发 >> 查寻list中的重复值 要考虑效率
  详细解决方案

查寻list中的重复值 要考虑效率

热度:2832   发布时间:2013-02-25 21:13:19.0
查找list中的重复值 要考虑效率
Java code
import java.util.ArrayList;import java.util.Date;import java.util.HashSet;import java.util.Iterator;import java.util.List;import java.util.Set;public class ListAndSet {    public static void main(String[] args) {                long startDate=new Date().getTime();                List set=new ArrayList<String>();                List li=new ArrayList<String>();                for (int i = 1; i <=110000; i++) {            set.add(i+"");            }                for (int i = 1; i <=110000; i++) {            li.add(i+"");            if(i==200)            {                li.add(200+"");            }            if(i==500)            {                li.add(500+"");            }            if(i==203)            {                li.add(203+"");            }        }        for (Object object : set) {               li.remove(object);               // System.out.println(iterator.next());        }                for (Object object : li) {            System.out.println("重复值有:"+object);        }        long endDate=new Date().getTime();        System.out.println("共花时间:"+(endDate-startDate));    }                        }


------解决方案--------------------------------------------------------
Java code
    public static void main(String[] args) throws Exception {        List<Integer> list = new ArrayList<Integer>();        list.add(1);        list.add(2);        list.add(2);        list.add(3);        list.add(4);        list.add(4);        list.add(5);        Set<Integer> set = new HashSet<Integer>();        for (int i : list) {            if (!set.add(i)) {                System.out.println(i);            }        }    }
  相关解决方案