代码之家  ›  专栏  ›  技术社区  ›  Peter

在groovy[].sum()中,当我期望0时返回null

  •  6
  • Peter  · 技术社区  · 15 年前

    在groovy中 [].sum() 退货 0

    2 回复  |  直到 15 年前
        1
  •  9
  •   Lifeweaver dbrin    4 年前

    根据 https://issues.apache.org/jira/browse/GROOVY-2411 对于字符串数组也是如此。解决方案是使用[].sum(0),它将返回0。

        2
  •  4
  •   Ted Naleid    15 年前

    如果您真的希望空列表为零,则始终可以使用:

    List foo = []
    def bar = foo.sum() ?: 0
    assert bar == 0
    

    如果左侧为空,elvis运算符将只计算右侧。