如何将此修改后的数组分配给变量?

时间:2018-06-18 20:12:47

标签: groovy

尝试将此作为一个单行,有点困惑,为什么这不起作用:

var= balh.getArrayOStrings('sdfsfd').each{ it.replaceAll("herp","derp") }

我调用一个返回字符串数组的方法。我循环遍历它们并进行替换并分配回var,但是数组中的修改后的字符串不会分配回var。为什么不呢?

1 个答案:

答案 0 :(得分:1)

each返回原始列表,请尝试

balh = [:]
balh.getArrayOStrings = { x ->
    [ "sudhpa Herp", "pskaap herp", "herp lsjkda"]
}

var = balh.getArrayOStrings('sdfsfd').collect { it.replaceAll("herp","derp") }

=> [sudhpa Herp, pskaap derp, derp lsjkda]