当前位置: 首页 > 面试题库 >

比较2个ArrayList的简单方法

鲁英卫
2023-03-14
问题内容

我有2个字符串对象的arraylists。

List<String> sourceList = new ArrayList<String>();
List<String> destinationList = new ArrayList<String>();

我有一些逻辑需要处理源列表,最终会得到目标列表。目标列表将有一些其他元素添加到源列表或从源列表中删除。

我的预期输出是string的2 ArrayList,其中第一个列表应具有从源中删除的所有字符串,第二个列表应具有所有新添加到源中的字符串。

有没有更简单的方法来实现这一目标?


问题答案:

将列表转换为 Collection并使用removeAll

    Collection<String> listOne = new ArrayList(Arrays.asList("a","b", "c", "d", "e", "f", "g"));
    Collection<String> listTwo = new ArrayList(Arrays.asList("a","b",  "d", "e", "f", "gg", "h"));


    List<String> sourceList = new ArrayList<String>(listOne);
    List<String> destinationList = new ArrayList<String>(listTwo);


    sourceList.removeAll( listTwo );
    destinationList.removeAll( listOne );



    System.out.println( sourceList );
    System.out.println( destinationList );

输出:

[c, g]
[gg, h]

[编辑]

其他方式(更清晰)

  Collection<String> list = new ArrayList(Arrays.asList("a","b", "c", "d", "e", "f", "g"));

    List<String> sourceList = new ArrayList<String>(list);
    List<String> destinationList = new ArrayList<String>(list);

    list.add("boo");
    list.remove("b");

    sourceList.removeAll( list );
    list.removeAll( destinationList );


    System.out.println( sourceList );
    System.out.println( list );

输出:

[b]
[boo]


 类似资料:
  • 我正在做一个学校作业,我必须检查ArrayList teKoop中的某些对象是否不在ArrayList mijnGames中,问题是我一直设置这个错误代码:索引1 out of length 1 out of bounds for length 1 这里有什么明显的问题吗? 如有任何帮助,我们将不胜感激。 因此indexOutOfBound错误已修复,新问题出现:s 它一直返回给我一个空的Arra

  • 问题内容: 考虑以下: 有什么办法可以缩短时间? Javascript中有什么类似的东西吗? 另外,jQuery可以在这里提供帮助吗? 问题答案: 使用正则表达式: 或相反: [更新]更短;-)

  • 本文向大家介绍python比较2个xml内容的方法,包括了python比较2个xml内容的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python比较2个xml内容的方法。分享给大家供大家参考。具体分析如下: 调用: 希望本文所述对大家的Python程序设计有所帮助。

  • 问题内容: 我正在为生成Excel文件(二进制文件)的某些代码编写JUnit测试。我还有另一个包含预期输出的Excel文件。将实际文件与预期文件进行比较的最简单方法是什么? 当然,我可以自己编写代码,但是我想知道在受信任的第三方库(例如Spring或Apache Commons)中是否已有这样做的方法。 问题答案: 这就是我最终要做的(由DBUnit完成繁重的工作): 这将比较两个文件中的数据,没

  • 本文向大家介绍javascript简单比较日期大小的方法,包括了javascript简单比较日期大小的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了javascript简单比较日期大小的方法。分享给大家供大家参考,具体如下: 希望本文所述对大家JavaScript程序设计有所帮助。

  • 问题内容: 我有两个。每个大小为100000。我想比较它们并计算匹配的元素。 这是我的代码: 在这里比较过程要花费很多时间。 如何解决和优化此问题。 问题答案: 您应该使用:返回一个包含collection1中所有元素的集合,这些元素也处于collection2中。