当前位置: 首页 > 知识库问答 >
问题:

比较两个数组列表以获取唯一和重复的值

景胜涝
2023-03-14

我有两个arraylist如图所示-pinklistnormallist。我正在比较这两个值,并从中找到唯一的和重复的值,如下代码所示:

List<String> pinklist = t2.getList();
List<String> normallist = t.getList();
ArrayList<String> duplicatevalues = new ArrayList<String>();
ArrayList<String> uniquevalues = new ArrayList<String>();

for (String finalval : pinklist) {
    if (pinklist.contains(normallist)) {
        duplicatevalues.add(finalval);
    } else if (!normallist.contains(pinklist)) {
        uniquevalues.add(finalval);
    }
}

我正在正确获取duplicatevalues,但没有获取唯一值。

共有1个答案

阎咏思
2023-03-14

您忽略了条件中的finalval,而是询问一个列表是否包含另一个列表。

你可以这样做:

// Variable names edited for readability
for (String item : pinkList) {
    if (normalList.contains(item)) {
        duplicateList.add(item);
    } else {
        uniqueList.add(item);
    }
}

我并不是真的把这些叫做“唯一的”或“重复的”项目--它们通常是关于一个集合中的项目。这只是测试一个列表中的每个项目是否在另一个列表中。在这种情况下,我会说,它更像是“现有的”和“新的”。

 类似资料:
  • 问题内容: 我有两个如图所示- 和。我正在对它们进行比较,并从两者中找到唯一值和重复值,如下代码所示: 我得到的是正确的,但是我没有得到唯一的值。 问题答案: 您将忽略条件,而是询问一个 列表 是否包含另一个 列表 。 您可以这样做: 不过,我不会真正称这些“独特”或“重复”的物品-这些物品通常是关于 一个收藏 夹中的物品的。这只是测试一个列表中的每个项目是否在另一个列表中。我会说,在这种情况下,

  • 我有以下数组列表 现在我需要比较这两个数组,并检查是否有id中的任何值存在于empIds中。如果是,我需要以布尔值true退出。我是这样做的。 但这需要很多时间。有人能帮我优化一下吗?

  • 有两个df df1 df2 预期产出: 从数据帧中获取唯一行比较,并在df1中显示唯一列 df1

  • 我将在序言中说我使用的是Swift1.2。我目前正在研究一个广度优先搜索算法,我以前在其他语言中实现过这个算法,比如javaScript或Python。 真的,我所要求的是一个优雅的方法来找到这两个之间的重复... 上面的新列表表示可以添加的新节点(不是重复的)问题是...复制的确实会被添加。下面是我的乱七八糟的代码:

  • 这与Java比较两个列表的不同之处在于,我需要能够在jUnit中断言相等性,而不仅仅是比较列表。

  • 我有以下数组 我想从这个数组中得到唯一的值。所以我希望我的结果是这样的 我使用了数组唯一函数,但无法得到结果 如果我有两个索引,这是有效的,但是对于多个索引呢?