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

快速确定列表是否包含数组[重复]中包含的至少一个项的方法

洪雅健
2023-03-14

我有一个<代码>列表

Java8似乎提供了一种通过流来实现的方法。更基本的方法呢?

谢谢

共有1个答案

权承
2023-03-14

一种方式没有Java8流:

public boolean containsAtLeastOne( List<String> a, String[] b ) {
    Set<String> aSet = new HashSet( a );
    for ( s : b ) {
       if ( aSet.contains( s ) ) {
           return true;
       }
    }
    return false;
}

另一种方式:

 public boolean containsAtLeastOne( List<String> a, String[] b ) {
    Set<String> aSet = new HashSet( a );
    List<String> bList = Arrays.asList(b);

    bList.retainAll( aSet );

    return 0 < bList.size();
 }
 类似资料:
  • 问题内容: 我需要确定数组中是否存在值。 我正在使用以下功能: 上面的函数总是返回false。 数组值和函数调用如下: 问题答案: 你可以像这样使用它:

  • 这可能吗?如果可能,我该如何正确地做到这一点?希望能够检查它是否包含1和2,如果是,继续与程序。

  • 我的字符串可以包含任何其他字符,但如果它至少包含一个数字,我希望从数组中获取这些字符串的索引。

  • 问题内容: 我看到人们正在使用另一个列表来查看列表中是否存在某项,但是有一种快速的方法吗?: 问题答案: 您可以使用以下语法: 同样,逆运算符: 它适用于列表,元组,集合和字典(检查键)。 请注意 ,这是列表和元组中的O(n)操作,而集合和字典中是O(1)操作。

  • 问题内容: a = [1,1,1,2,3,4,4] >>> b = [1,1,2,3,3,3,4] 请注意,这不是一个相同的问题: 两个列表的Python交集保持重复 因为即使列表a中有三个1,列表b中也只有两个,所以结果应该只有两个。 问题答案: 您可以使用此方法,当您使用交叉路口时,它将为每个元素提供在任一列表中找到的最低计数。 输出 :