Selenium Lambda groovy函数列表<;Webelement>;getText未编译

Selenium Lambda groovy函数列表<;Webelement>;getText未编译,selenium,arraylist,groovy,lambda,Selenium,Arraylist,Groovy,Lambda,我正在尝试实现Groovy Lambda函数,但所编写的内容不正确。 让它变得非常简单。下面是使用lambda的java代码 protected void aaa(List<WebElement> el){ el.stream().filter(a->a.getText() == "a"); } 受保护的无效aaa(列表el){ el.stream().filter(a->a.getText()=“a”); } 我使用了类似的方法 List<WebElemen

我正在尝试实现Groovy Lambda函数,但所编写的内容不正确。 让它变得非常简单。下面是使用lambda的java代码

protected void aaa(List<WebElement> el){
    el.stream().filter(a->a.getText() == "a");
}
受保护的无效aaa(列表el){
el.stream().filter(a->a.getText()=“a”);
}
我使用了类似的方法

List<WebElement> list = ...
list.stream().filter(a->a.getText() == "a")
List=。。。
list.stream().filter(a->a.getText()=“a”)
由于以下错误,未对其进行编译:意外标记->

任何人都可以提供一个如何在Groovy中获得它的描述和示例吗?

Groovy不支持Java lambadas。版本2.6和更高版本会这样做。对于上一个版本,您可以使用闭包

list.stream().filter( { a -> a.getText() == "a" } )

您的Groovy版本是什么?我使用的是Katalon Studio,但使用的版本是1.0.0.201807120458这是非常旧的版本。在版本2.*(不知道是否全部)中,您可以使用闭包而不是lambada。您能为列表提供一个闭包示例吗?我可以尝试更新到较新的版本。对不起,它使用org.codehaus.groovy_2.4.7.xx-201611170128-e46版本。谢谢,它可以工作。请你帮我用groovy这行代码:list.stream().map(WebElement::getText.collector(Collectors.toList());Mine版本失败:list.stream().map({WebElement}作为字符串)。collect(Collectors.toList())groovy.lang.MissingMethodException:没有方法签名:java.util.stream.ReferencePipeline$Head.map()适用于参数类型:(java.lang.String)值:[quality1.CommonMethods$\u clickSubMenuLeftBar_closure2@4e49ce2b]可能的解决方案:地图(java.util.function.function)、max(java.util.Comparator)、min(java.util.Comparator)、wait()、grep()、any()@Michal请问一个新问题,这些评论不是针对这个的。好的,