Groovy中的元组

2022年01月15日 阅读数:4
这篇文章主要向大家介绍Groovy中的元组,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

Groovy元组是有序的,不变的元素列表。​​Groovy​​​有本身的​​groovy.lang.Tuple​​​类。咱们能够经过构造函数Tuple提供须要包含在其中的全部元素来建立一个实例​​Tuple​​​。咱们不能将新元素添加到Tuple实例或删除元素。咱们甚至不能更改元组中的元素,所以它是彻底不变的。这使得它很是适合用做须要返回多个值的方法的返回值。​​Groovy​​​还提供了一个​​Tuple2​​​仅可用于两个元素的元组实例的类。元素在​​Tuple2​​实例中键入。ide

在如下示例中,咱们看到​​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())
}

}