元素没有添加到列表groovy脚本中

时间:2017-10-28 18:00:00

标签: groovy

在groovy中添加列表中的元素时发生了奇怪的事情。 Scenario- 列表list1和list2有两个。 List1包含X类型的Object,List2为空。 List1正在从java文件中填充,并且在groovy脚本中迭代List1时,我在List2中添加了对象。

但发生的事情是元素没有被添加。 List2仍然是空的。 如果我调试行并计算表达式/行,那么它就会被添加。但是在执行此行时正常调试时,它会突然跳转到任意行。 没有例外。

创建了如下列表:

List<X> dataToBeRemoved = new ArrayList<>()

按如下方式迭代列表:

for (X data in XList) {
    if(something) {
        dataToBeRemoved.add(data)
    }
}

我是Groovy的新手,如果有人遇到过这样的问题。请指导。感谢。

2 个答案:

答案 0 :(得分:2)

你没有问,但输入参数并不能帮到你。

List elementsToRemove = []

而且,在这种情况下更好:

List elementsToRemove = allElements.findAll { ...some condition... }

之后,您无法从代码中分辨出来。问题包括&#34;为什么Groovy不起作用?&#34;很难回答。

答案 1 :(得分:0)

您只需使用

即可定义空列表

def mySmallList = []

您也可以使用findAll过滤掉列表

mySmallList = myBigList.findAll {//some condition }

请查看链接https://groovyconsole.appspot.com/script/5127180895911936