<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      獲取兩個集合中不同的元素

      前言

      對于兩個list、或者set集合中,獲取其中不同元素方法的獲取這塊,因為自己工作上有所涉及,所以自己針對這塊進行總結,希望能為其他小伙伴有所幫助!

      一、代碼塊內容

      (1).封裝工具類代碼塊

      import java.util.*;
      
      /**
       * @ClassName: ElenmentUnits
       * @Description:
       * @Author: songwp
       * @Date: 8:13 2022/7/6
       **/
      public class ElenmentUnits {
      
          /**
                * 獲取兩個List的不同元素
                * @param list1
                * @param list2
                * @return
                */
          public  List<String> getListDiffrent(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;
          }
      
      
          /**
           * 獲取兩個集合中不同的元素
           * @param arr1
           * @param arr2
           */
          public void getSetDiffrent(Integer[] arr1, Integer[] arr2) {
              Set<Integer> set1 = new HashSet<>(Arrays.asList(arr1));
              Set<Integer> set2 = new HashSet<>(Arrays.asList(arr2));
              Set<Integer> set3 = new HashSet<>(set2);
      
              //set集合有去重特性
              set3.addAll(set1);
              //retainAll():保留包含在指定 collection 中的元素
              set1.retainAll(set2);
              //	removeAll(); 移除 set 中那些包含在指定 collection 中的元素
              set3.removeAll(set1);
              System.out.println(set3);
          }
      }
      

      (2).測試類代碼塊

      public static void main(String[] args) {
      
              ElenmentUnits elenmentUnits = new ElenmentUnits();
      
              /**
               * 1.獲取兩個數組中不同的元素
               */
              Integer nums1[] = {1, 2, 3, 5, 7, 23};
              Integer nums2[] = {16, 18, 2, 5, 12, 3,23};
              System.out.println("獲取兩個數組中不同的元素:");
              elenmentUnits.getSetDiffrent(nums1, nums2);
      
              /**
               * 2.獲取兩個List的不同元素
               */
              List<String> list1 =new ArrayList<String>();
              for(int i=1;i<10;i++) {
                  list1.add(i+"");
              }
              List<String> list2 =new ArrayList<String>();
              for(int i=5;i<10;i++) {
                  list2.add(i+"");
              }
              //方法一
              List<String> list3 = elenmentUnits.getListDiffrent(list1,list2);
              System.out.println(list1);
              System.out.println(list2);
              System.out.println("方法1--獲取兩個List的不同元素:\n"+list3);
      
              //方法二
              List<String> list4 =new ArrayList<String>();
              List<String> list5 =new ArrayList<String>();
              list1.forEach(l1->{
                if(list2.contains(l1)){
                    // 獲取相同同的元素
                    list4.add(l1);
                }else {
                    // 獲取不同的元素
                    list5.add(l1);
                }
             });
              System.out.println("獲取兩個List的相同的元素:\n"+list4);
              System.out.println("方法2--獲取兩個List的不同元素:\n"+list5);
          }
      

      二、控制臺輸出

      1.獲取兩個數組中不同的元素:
      [16, 1, 18, 7, 12]
      2.方法1--獲取兩個List的不同元素:
      [1, 2, 3, 4]
      3.獲取兩個List的相同的元素:
      [5, 6, 7, 8, 9]
      4.方法2--獲取兩個List的不同元素:
      [1, 2, 3, 4]

      posted @ 2022-07-06 10:13  [奮斗]  閱讀(909)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 欧美不卡一区二区三区| 国产偷国产偷亚洲高清人| 午夜福利国产盗摄久久性| 99在线精品免费视频| 黑人大群体交免费视频| 国产精品v欧美精品∨日韩| 日本丶国产丶欧美色综合| 国产普通话刺激视频在线播放| 亚洲精品无码成人A片九色播放| 蜜臀av久久国产午夜| 久女女热精品视频在线观看| 亚洲一二区在线视频播放| 国产真实younv在线| 欧美性猛交xxxx乱大交丰满| 无码AV无码免费一区二区| 性高湖久久久久久久久| 日本无遮挡真人祼交视频| 日韩精品视频一区二区不卡| 给我播放片在线观看| 精品国产午夜理论片不卡| 亚洲av影院一区二区三区| 国产精品人妻中文字幕| 亚洲综合久久精品国产高清| 人妻出轨av中文字幕| 国语精品国内自产视频| 无码免费大香伊蕉在人线国产| 国产一区二区不卡视频在线| 久久69国产精品久久69软件| 日韩精品国产二区三区| 国产乱久久亚洲国产精品| 国产精品美女自慰喷水| 少妇又爽又刺激视频| 少妇人妻激情乱人伦| 99久久婷婷国产综合精品青草漫画 | 国产午夜福利视频在线观看| 性视频一区| 国产午夜福利视频合集| 99精品国产精品一区二区| 少妇真人直播免费视频| 欧美高清freexxxx性| 国产亚洲精品自在久久vr|