Groovy 如何使用“全部查找”根据条件显示整个数组?

Groovy 如何使用“全部查找”根据条件显示整个数组?,groovy,Groovy,我在groovy中基于一个标准输出整个数组时遇到问题。实际上,我想在下面做的是,如果数组中的名字='Peter',则输出属于Peter的所有信息。目前,我可以让它只显示相关Pater的名字,但如何输出who数组信息 实际上在它输出的那一刻:[Peter,Peter,Peter] 我希望它输出:[1,彼得,史密斯],[2,彼得,乔尼娅],[4,彼得,帕特尔] 代码如下: def array = [[number: 1, forename: "Peter" , surname: "Smith"],

我在groovy中基于一个标准输出整个数组时遇到问题。实际上,我想在下面做的是,如果数组中的名字='Peter',则输出属于Peter的所有信息。目前,我可以让它只显示相关Pater的名字,但如何输出who数组信息

实际上在它输出的那一刻:
[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()