如何使用运算符`?`从数组中获取项?

时间:2012-11-21 08:56:42

标签: groovy

Groovy代码:

def line = "aa bb"
println line?.split("\\s+")?[1]

我想使用?数组来获取项目。如果数组为null,则返回null,就像?.

一样

但上面的代码无法编译。怎么解决?或者还有其他简单的替代解决方案吗?

2 个答案:

答案 0 :(得分:2)

您可以使用getAt代替[]subscript operator

def line = "aa bb"
println line?.split("\\s+")?.getAt(1)

http://groovyconsole.appspot.com/script/801001

答案 1 :(得分:-1)

这是List的默认行为:

println (line?.split("\\s+")as List)[1]