Groovy编译器不接受java 8 Lambdas

Groovy编译器不接受java 8 Lambdas,第1张

概述因为,我们知道,Groovy语法接受闭包. 今天, Java 8还增加了语法关闭. 但是,当我在groovy文件中编写java8闭包时,我会收到如下错误信息: Person.findAll().stream().filter(e-> e.age > 20) 我们得到这个错误: org.codehaus.groovy.control.MultipleCompilationErrorsExceptio 因为,我们知道,Groovy语法接受闭包.
今天,Java 8还增加了语法关闭.

但是,当我在groovy文件中编写java8闭包时,我会收到如下错误信息:

Person.findAll().stream().filter(e-> e.age > 20)

我们得到这个错误:

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup Failed:Script1.groovy: 7: unexpected token: -> @ line 7,column 39.   Person.findAll().stream().filter(e-> e.controllerID > 0)                                         ^1 error

然而,以下作品是成功的:

Person.findAll().stream()
解决方法 是的,Groovy解析器不接受Java 8 Lambdas(而不是封闭).

你可以使用闭包代替它(假设你在Groovy 2.3.*)

即:

Person.findAll().stream().filter( { e -> e.age > 20 } )
总结

以上是内存溢出为你收集整理的Groovy编译器不接受java 8 Lambdas全部内容,希望文章能够帮你解决Groovy编译器不接受java 8 Lambdas所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1243788.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存