在groovy []。sum()返回 null ,当我期望 0
答案 0 :(得分:8)
根据http://jira.codehaus.org/browse/GROOVY-2411,这是sum()的预期行为 对于一系列字符串也是如此。解决方案是使用[] .sum(0),它将返回0。
答案 1 :(得分:4)
如果你真的想要一个空列表为零,你总是可以使用:
List foo = []
def bar = foo.sum() ?: 0
assert bar == 0
如果左侧为空,则elvis运算符仅评估右侧。