如何在Groovy列表中查找格式的字符串元素

如何在Groovy列表中查找格式的字符串元素,groovy,Groovy,我有一个如下的groovy列表 def permissions = [ TESTENTITY.ADMINISTER, TESTENTITY.CREATE, TESTENTITY.DELETE, TESTENTITY.READ, TESTENTITY.UPDATE, TESTBEAN.ADMINISTER, TESTBEAN.CREATE, TESTBEAN.DELETE, TESTBEAN.READ, TESTBEA

我有一个如下的groovy列表

def permissions = [
    TESTENTITY.ADMINISTER,
    TESTENTITY.CREATE,
    TESTENTITY.DELETE,
    TESTENTITY.READ,
    TESTENTITY.UPDATE,
    TESTBEAN.ADMINISTER,
    TESTBEAN.CREATE,
    TESTBEAN.DELETE,
    TESTBEAN.READ,
    TESTBEAN.UPDATE
]

我试图用更少的代码找到format TESTENTITY列表中的所有元素。这可行吗?

你可以这样做

def matchingResults = permissions.findAll { perm ->
    // perm will be one element from permissions.
    // inspect it and return true if it should be
    // include in the results.
}
def matchingResults = permissions.findAll { perm ->
    perm.startsWith 'TESTENTITY'
}
如果这些是权限列表中的字符串,则可能看起来像这样

def matchingResults = permissions.findAll { perm ->
    // perm will be one element from permissions.
    // inspect it and return true if it should be
    // include in the results.
}
def matchingResults = permissions.findAll { perm ->
    perm.startsWith 'TESTENTITY'
}

这就是你想要的吗?

这就是我对这个问题的解释。 不将每个元素视为字符串,而是枚举的集合

注:
没有任何东西添加到TestBean只是为了显示差异。

代码比什么少?那些是弦吗?你试过什么?我不知道为什么这个问题被否决了好几次。除了这个问题中特殊的少代码部分,这似乎是一个非常合理的问题。我是groovy的新手,我找不到关于为groovy列表编写闭包的很多信息,我不明白为什么我的问题被否决了@JeffScottBrown@RanPaul你有枚举列表吗?如果是,请更新标题,如果您无法编辑问题,请告知。标题上说它们是字符串。如果他们是enum,这也许可以解释为什么这个问题被否决。这个标题有误导性。