如何在对象本身上引用方法

时间:2018-07-10 13:48:00

标签: java groovy java-8 method-reference

在Java中我可以写

Arrays.asList("test  ").stream().map(String::trim);

如果我尝试使用groovy

Arrays.asList("test  ").stream().map(String.&trim)

我明白了

    Caught: groovy.lang.MissingMethodException: No signature of method: java.lang.String.trim() is applicable for argument types: (String) values: [test  ]
Possible solutions: trim(), wait(), grep(), wait(long), split(java.lang.String), print(java.io.PrintWriter)

正确的语法是什么,或者我必须诉诸

    Arrays.asList("test  ").stream().map({ x -> x.trim() })

1 个答案:

答案 0 :(得分:0)

您也可以使用.map { it.trim() },但是否则,groovy没有像Java那样工作的方法引用