zoukankan      html  css  js  c++  java
  • 关于使用工具类org.apache.commons.collections.ListUtils合并List的问题

    今天在做项目时,需要将几个List进行合并,于是就用到了apache提供关于List操作的工具类ListUtils,但是在使用的过程中发现一些问题。

    public static void main(String[] args) {
        List<String> list1 = new ArrayList<String>();
        list1.add("1");
        list1.add("2");
        List<String> list2 = new ArrayList<String>();
        list2.add("2");
        list2.add("3");
        list2.add("4");
        // 方法1, 为原始方法
        List<String> list = new ArrayList<String>();
        for (String str : list1) {
            list.add(str);
        }
        for (String str : list2) {
            list.add(str);
        }
        System.out.println(list);
        
        // 方法2, 使用工具类
        list = ListUtils.sum(list1, list2);
        System.out.println(list);

        // 方法3
        list = new ArrayList<String>();
        list.addAll(list1);
        list.addAll(list2);
        System.out.println(list); }

    本以为打印结果一样的,但是实际结果不一样。

    方法1的结果是:[1, 2, 2, 3, 4]

    方法2的结果是:[1, 2, 3, 4]

    方法3的结果是:[1, 2, 2, 3, 4]

    原来工具类在合并是,会自动除去重复的元素,看来以后使用工具类时还需要多加注意,要不然会坑了自己的。

  • 相关阅读:
    Oracle:SQL语句--撤销用户权限
    Oracle:SQL语句--给用户赋权限
    RSTP端口状态迁移过程详解
    LSB算法分析与实现
    工厂方法模式
    Ceasar
    区域性名称和标识符
    Packet Tracer网络模拟实验实记
    H3C-OSPF
    H3C-RIP
  • 原文地址:https://www.cnblogs.com/cool5201314/p/3770885.html
Copyright © 2011-2022 走看看