Groovy 检查列表是否同时包含两个元素或仅包含一个元素

Groovy 检查列表是否同时包含两个元素或仅包含一个元素,groovy,Groovy,是否有忍者把戏来检查包含这两个元素的列表?我在想任何类似的事情 基本上,我想重写下面的代码: List<String> elements = ["first", "fourth"] List<String> longList = ["first", "second", "third", "fourth"] boolean haveAll = elements ? true : false elements.each { String element ->

是否有忍者把戏来检查包含这两个元素的列表?我在想任何类似的事情

基本上,我想重写下面的代码:

List<String> elements = ["first", "fourth"]
List<String> longList = ["first", "second", "third", "fourth"]
boolean haveAll = elements ? true : false

elements.each { String element ->
    haveAll &= longList.any {element==it}
}

assert haveAll == true

longList = ["first", "second", "third"]
elements.each { String element ->
    haveAll &= longList.any {element==it}
}

assert haveAll == false
List元素=[“第一”、“第四”]
列表长列表=[“第一”、“第二”、“第三”、“第四”]
布尔haveAll=元素?对:错
元素。每个{String元素->
haveAll&=longList.any{element==it}
}
断言haveAll==true
长列表=[“第一”、“第二”、“第三”]
元素。每个{String元素->
haveAll&=longList.any{element==it}
}
断言haveAll==false

我怀疑这算不上忍者的把戏,但它似乎很管用

List<String> longList = ["first", "second", "third", "fourth"]

boolean hasAll = longList.containsAll(["first", "fourth"])
boolean hasAny = ["not in long list", "first"].any {
  it in longList
}

// check that it worked 
assert hasAll && hasAny
List longList=[“第一”、“第二”、“第三”、“第四”]
布尔hasAll=longList.containsAll([“第一”、“第四”])
布尔hasAny=[“不在长列表中”,“第一个”]。任意{
它在长名单中
}
//检查它是否有效
断言hasAll&&hasAny

我怀疑这算不上忍者的把戏,但它似乎很管用

List<String> longList = ["first", "second", "third", "fourth"]

boolean hasAll = longList.containsAll(["first", "fourth"])
boolean hasAny = ["not in long list", "first"].any {
  it in longList
}

// check that it worked 
assert hasAll && hasAny
List longList=[“第一”、“第二”、“第三”、“第四”]
布尔hasAll=longList.containsAll([“第一”、“第四”])
布尔hasAny=[“不在长列表中”,“第一个”]。任意{
它在长名单中
}
//检查它是否有效
断言hasAll&&hasAny

您可以使用
每一个
任何

def elements = ["first", "fourth"]
def longList = ["first", "second", "third", "fourth"]

assert elements.every { it in longList }
assert elements.any { it in longList }

您可以使用
each
any

def elements = ["first", "fourth"]
def longList = ["first", "second", "third", "fourth"]

assert elements.every { it in longList }
assert elements.any { it in longList }