Groovy列表作为整数

Groovy列表作为整数,groovy,Groovy,我有以下Groovy代码: def number = "246" as List def number1= number.subsequences() //outputs: [[6], [2, 6], [4, 6], [2], [2, 4, 6], [4], [2, 4]] 现在我想要的是,number1中的每个列表都应该返回为int,例如,number1中的第二个列表应该返回为26。我所做的是: number1.each{ it }.collect() as int 这不起作用并抛出错误

我有以下Groovy代码:

def number = "246" as List
def number1= number.subsequences() 
//outputs: [[6], [2, 6], [4, 6], [2], [2, 4, 6], [4], [2, 4]]
现在我想要的是,
number1
中的每个列表都应该返回为
int
,例如,
number1
中的第二个列表应该返回为
26
。我所做的是:

number1.each{ it }.collect() as int
这不起作用并抛出错误。这可以通过其他方式实现吗? 提前感谢,如果我错了请纠正我

您需要:

number1.collect { it.join() as int }

这将
join()
子列表中的每个数字转换成一个
字符串
,然后将该
字符串
转换成一个
int
以前从未使用过Groovy,但是:

number1.collect{ it.join('') as int }
Result: [6, 26, 46, 2, 246, 4, 24]

看起来是一种很酷的语言。

这里有一种替代方法,它使用spread运算符而不是collect:

number1*.join()*.asType(Integer)

以前没有使用过Groovy,但您仍然得到了答案。。好东西:D