2015-11-05 51 views
1

是否有一種簡單的方法來檢查一組對象是否包含具有值的屬性?的東西Groovy - 查看對象集合是否具有包含值的屬性的簡單方法

例像我在尋找:

[[name:'a'],[name:'b'],[name:'c']].toSet().contains{it->it.name=='b'} == true

編輯:我想出了一個解決方案,但如果有人有一個更有效的一個,也許不會創建一個新的集合,請分享。

[[name:'a'],[name:'b'],[name:'c']].toSet().findAll{it.name=='b'}.size()>0

回答

3
[[name: 'a'], [name: 'b'], [name: 'c']].any{ it.name == 'b' } 
0
def x1 = [['name':'a'],['name':'b'],['name':'c']] 
def x2 = x1.​groupBy{it.name}​​​​​​​​​​​​​​​ 
x2.containsKey('b')​​​​ 

這應該爲你工作。

+0

我創建了一張地圖列表,然後將列表轉換爲一個集合以創建一個示例集合。 – Anonymous1

+0

@ Anonymous1 - 看看這個。 –

相關問題