Groovy替代Java8的.map()流操作

Pat*_*čin 6 java groovy

什么是Groovy的Java 8替代品.map()

例:

List<String> codes = events
    .stream()
    .map(event -> event.getCode())
    .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

我试图做

events.each { it; return it.getCode() }.collect() as String[]
Run Code Online (Sandbox Code Playgroud)

但我得到ListStringS,但toString()表示,而代码

Mic*_*ter 14

考虑collect如下所示的方法:

class Event {
    def code
    def name
}

def events = []
events << new Event(code: '001', name: 'a')
events << new Event(code: '002', name: 'b')

def codes = events.collect { it.code }

assert ['001','002'] == codes
Run Code Online (Sandbox Code Playgroud)