我试图在拆分String上调用方法“findResults”,但是出现了编译错误。拆分String返回一个String数组,我认为它将被视为Groovy中的Collection。其他Collection方法对字符串数组有效,所以我的问题是:我遇到过一个错误吗?
def names = "john paul pete"
assert names.split().findResults{if (it.startsWith("p")) return it.capitalize()}.join(" ") == "Paul Pete"
结果: groovy.lang.MissingMethodException:没有方法签名:[Ljava.lang.String; .findResults()适用于参数类型:(gard_split_check $ _run_closure2)值:[gard_split_check $ _run_closure2 @ 722b302]
N.B。我知道我可以通过在上面的代码中用tokenize()替换split(),或者将split()方法的结果转换为List来获得正确的结果。