Groovy 如何使用“全部查找”根据条件显示整个数组?
我在groovy中基于一个标准输出整个数组时遇到问题。实际上,我想在下面做的是,如果数组中的名字='Peter',则输出属于Peter的所有信息。目前,我可以让它只显示相关Pater的名字,但如何输出who数组信息 实际上在它输出的那一刻:Groovy 如何使用“全部查找”根据条件显示整个数组?,groovy,Groovy,我在groovy中基于一个标准输出整个数组时遇到问题。实际上,我想在下面做的是,如果数组中的名字='Peter',则输出属于Peter的所有信息。目前,我可以让它只显示相关Pater的名字,但如何输出who数组信息 实际上在它输出的那一刻:[Peter,Peter,Peter] 我希望它输出:[1,彼得,史密斯],[2,彼得,乔尼娅],[4,彼得,帕特尔] 代码如下: def array = [[number: 1, forename: "Peter" , surname: "Smith"],
[Peter,Peter,Peter]
我希望它输出:[1,彼得,史密斯],[2,彼得,乔尼娅],[4,彼得,帕特尔]
代码如下:
def array = [[number: 1, forename: "Peter" , surname: "Smith"],
[number: 2, forename: "Peter" , surname: "Jones"],
[number: 3, forename: "Tom" , surname: "White"],
[number: 4, forename: "Peter" , surname: "Patel"],
[number: 5, forename: "George" , surname: "Woodburn"]]
def arrayForenameFindAll = array.forename.findAll{it == "Peter"}
这将评估为列表的列表,如您在问题中所述
这将评估为列表的列表,如您在问题中所述 array.findAll(it.forename==“Peter”)
?@JBNizet您建议的将返回Map
的列表,而不是List
的List
数组。findAll(it.forename==“Peter”)
?@JBNizet您建议的将返回Map
的列表,不是列表的列表
def array = [[number: 1, forename: "Peter" , surname: "Smith"],
[number: 2, forename: "Peter" , surname: "Jones"],
[number: 3, forename: "Tom" , surname: "White"],
[number: 4, forename: "Peter" , surname: "Patel"],
[number: 5, forename: "George" , surname: "Woodburn"]]
def arrayForenameFindAll = array.findAll { it.forename == 'Peter' }*.values()