Groovy元组是有序的,不变的元素列表。Groovy
有自己的groovy.lang.Tuple
类。我们可以通过构造函数Tuple提供需要包含在其中的所有元素来创建一个实例Tuple
。我们不能将新元素添加到Tuple实例或删除元素。我们甚至不能更改元组中的元素,因此它是完全不变的。这使得它非常适合用作需要返回多个值的方法的返回值。Groovy
还提供了一个Tuple2
仅可用于两个元素的元组实例的类。元素在Tuple2
实例中键入。
在以下示例中,我们看到Tuple
和Tuple2
类的不同用法:
package com.FunTester.demo
import com.fun.frame.SourceCode
class demo5 extends SourceCode {
public static void main(String[] args) {
def tuple = new Tuple('one', 1, getJson("demo=1"))
println tuple.size() == 3
println tuple.get(0) == 'one'
println tuple[1] == 1
println tuple.last().demo == 1
//尝试修改tuple
try {
tuple.add('extra')
println false
} catch (Exception e) {
println e
}
try {
tuple.remove('one')
println false
} catch (Exception e) {
println e
}
try {
tuple[0] = 'new value'
println false
} catch (Exception e) {
println e
}
//tuple2 Demo 到tuple9
def pair = new Tuple2('two', 2)
println pair.first == 'two'
println pair.second == 2
def tuple3 = new Tuple3("true", 3, 4)
println tuple3.third
def (String a, Integer b) = dd('sum', 1, 2, 3)
println a == 'sum'
println b == 6
}
static def dd(String key, int ... values) {
new Tuple2(key, values.sum())
}
}
标签:Groovy,tuple,Tuple,元组,Tuple2,println,new,def
From: https://blog.51cto.com/FunTester/7157542