您的位置:首页 > 运维架构 > Apache

关于使用工具类org.apache.commons.collections.ListUtils合并List的问题

2014-06-05 18:07 826 查看
今天在做项目时,需要将几个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]

原来工具类在合并是,会自动除去重复的元素,看来以后使用工具类时还需要多加注意,要不然会坑了自己的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐