在Groovy中总结2个列表的内容

Art*_*ero 12 groovy sum arraylist

我在Groovy中有两个列表,需要对两者的内容求和.

例如:

list1 = [1,1,1]
list2 = [1,1,1]
Run Code Online (Sandbox Code Playgroud)

我期待这个结果:

total = [2,2,2]
Run Code Online (Sandbox Code Playgroud)

我尝试用+运算符o .sum方法求和,但我有一个列表的串联.

[1, 1, 1, 1, 1, 1]
Run Code Online (Sandbox Code Playgroud)

这是Groovy足够groovy还是我需要循环列表的每个元素?

ata*_*lor 33

Groovy的List.transpose()工作方式与zip其他一些语言类似.试试这个:

list1 = [1,2,3]
list2 = [4,5,6]
assert [list1, list2].transpose()*.sum() == [5,7,9]
Run Code Online (Sandbox Code Playgroud)

  • 它是[传播运算符](http://docs.codehaus.org/display/GROOVY/Operators?showChildren=false#Operators-SpreadOperator%28.%29),是列表上"收集"的简写. (2认同)