zoukankan      html  css  js  c++  java
  • 【方法】list<?> 两个list集合 查找不同元素,求差值

    //方法1
     //自己声明list
    //思路,从list1中删除list2中相同的元素
    //使用循环遍历对比的方式删除
    //list1包含list2,list1多与list2
    //结束得出list1为不相同元素
    for(int i=0;i<list1.size();i++) { for(int j=0;j<list2.size();j++) { if (list1.get(i).toString().equals(list2.get(j).toString()))//查找相同的元素 { list1.remove(i);//删除list1下标为i的元素 i--; //删除下标后list元素变少需要减少下标值,list不会和数组一样占用空间 break; } } } //方法2 //获取两个集合的差集 public List<?> removeAll(List<?> src, List<?> target) { LinkedList<?> result = new LinkedList<>(src); //大集合用linkedlist HashSet<?> targetHash = new HashSet<>(target); //小集合用hashset Iterator<?> iter = result.iterator(); //采用Iterator迭代器进行数据的操作 while(iter.hasNext()){ if(targetHash.contains(iter.next())){ iter.remove(); } } return result; }
    如果你连技术都搞不定,怎么去搞定其他更加有挑战性的东西呢?
  • 相关阅读:
    【xinsir】githook之precommit分享
    node进程一些信号的意义
    ES6篇
    Webpack4篇
    Node篇
    Vuex篇
    WebStorage篇
    HTML5篇
    html5语义化标签大全
    emmet语法
  • 原文地址:https://www.cnblogs.com/suncos/p/11111390.html
Copyright © 2011-2022 走看看