zoukankan      html  css  js  c++  java
  • JAVA获取两个List<String>中不同的数据

    效率非常不错

    测试结果:

    1、list1中有97277条数据,list2中有37894条数据,两个list进行对比找出不同的数据共60000条左右,用时:0.051秒

    2、list1中有97277条数据,list2中有97067条数据,两个list进行对比找出不同的数据共288条,用时:0.06秒

    下面的方法是对比两个list相互不同的数据

    也可以删除红色字的代码做成list1比list2多出多少数据

    public static List<String> getDiffrent4(List<String> list1, List<String> list2) 
        {           
               Map<String,Integer> map = new HashMap<String,Integer>(list1.size()+list2.size());
               List<String> diff = new ArrayList<String>();
               List<String> maxList = list1;
               List<String> minList = list2;
               if(list2.size()>list1.size())
               {
                   maxList = list2;
                   minList = list1;
               }
               
               for (String string : maxList) 
               {
                  map.put(string, 1);                    
               }
               
               for (String string : minList) 
               {
                   Integer cc = map.get(string);                    
                   if(cc!=null)                    
                   {
                       map.put(string, ++cc);
                       continue;                    
                   }           
                   map.put(string, 1);                    
               }
               
               for(Map.Entry<String, Integer> entry:map.entrySet())                    
               {                    
                   if(entry.getValue()==1)                    
                   {                    
                       diff.add(entry.getKey());                    
                   }                    
               }                               
               return diff;                    
        }
  • 相关阅读:
    前端之JavaScript内容
    前端之CSS内容
    前端之HTML内容
    表单提交中的input、button、submit的区别
    PostgreSQL
    PostgreSQL
    PostgreSQL
    JIRA中的标记语言的语法参考
    Markdown
    Linux
  • 原文地址:https://www.cnblogs.com/kgdxpr/p/3186377.html
Copyright © 2011-2022 走看看