java - 检查 "List of Lists"中是否存在特定列表,无论顺序如何

标签 java arraylist contains

我有一个列表列表,例如

[[0, 5, 10, -1], [1, 8, 3, 4], [2, 9, 6, 7]]

现在我想搜索上面的列表中是否包含 [8,1,4,3] 我只是想忽略元素的顺序。 我怎样才能做到这一点。 ** 我尝试包含,但当顺序不同时它会失败。

编辑: 我正在使用的代码

for(List<Integer> innerSList : PermutaionS_toDraw)
        {int elem_trans = 0;

        if(!Final.contains(innerSList))
        {
        Final.add(PermutaionS_toDraw.get(PermutaionS_toDraw.indexOf(innerSList)));
        }
}

最佳答案

迭代所有列表,对于每个列表检查它们的长度与您要比较的列表的长度相同,如果是这样,则调用 containsAll检查它是否包含所有值。

for(List<Integer> innerList : permutaionsToDraw){
    int elemTrans = 0;

    if(final.size() != innerList.size() || !final.containsAll(innerSList)) {
        final.add(permutaionsToDraw.get(permutaionsToDraw.indexOf(innerList)));
   }
}

注意

我重命名了您的变量以符合 Java 命名约定

关于java - 检查 "List of Lists"中是否存在特定列表,无论顺序如何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45244852/

相关文章:

java - "contains"哈希集方法问题 (Java)

java - 为什么 Java 中的 contains() 方法不能按预期工作?

java - ActiveMQ/JMS "losing"消息 - 我缺少什么?

java - 从 Arrays.asList 返回的列表是否保持与原始数组集合相同的顺序?

java - 从 ArrayList 中删除对象而不(隐式)循环遍历它

java - 将 JSON 文件中的 JSON 数组解析为 Java ArrayList

filter - Google Docs 电子表格显示匹配条件的行中的数据

java - 令人困惑的缩进,为什么以及如何发生

java - 尝试将数据从一个 fragment 传递到另一个 fragment ,但数据未出现

java - 在到达 Controller 之前和离开 Controller 之后解密/加密有效负载