JavaTuples Ennead类
1 什么是JavaTuples Ennead类
org.javatuples.Ennead类表示包含九个元素的元组。
2 JavaTuples Ennead类的语法
public final class Ennead<A, B, C, D, E, F, G, H, I>
extends Tuple
implements IValue0<A>, IValue1<B>,
IValue2<C>, IValue3<D>, IValue4<E>,
IValue5<F>, IValue6<G>, IValue7<H>,
IValue8<I>
3 JavaTuples Ennead类的构造方法
构造方法 | 描述 |
---|---|
Ennead(A value0, B value1, C value2, D value3, E value4, F value5, G value6, H value7, I value8) | 这将创建一个Ennead元组。 |
4 JavaTuples Ennead类的方法
方法 | 描述 |
---|---|
Ennead add(Unit tuple) |
此方法返回一个 Ennead 元组。 类似地,添加元组的其他方法也是可用的,例如 add(Pair tuple) 返回 Sextet 和 upto add(Sextet tuple) 返回 Decade 元组。 |
Ennead add(X0 value) |
此方法向元组添加一个值并返回一个 Ennead 元组。 类似地,其他添加值的方法也是可用的,例如 add(X0 value0, X1 value1) 返回六位组等等,直到带有六个参数的 add() 。 |
Ennead addAt0(Unit value) |
此方法在索引 0 处添加一个 Unit 元组并返回一个 Ennead 元组。 类似地,其他添加元组的方法也是可用的,例如 addAt0(Pair value) 返回 Sextet 等等直到 addAt0(Sextet)。其他类似的方法是 addAt1(Unit value),它在 index0 处添加一个单位,并具有与 addAt2(Sextet) 类似的方法。 |
Ennead addAt0(X0 value) |
此方法在索引 0 处添加一个值并返回一个 Ennead 元组。 类似地,其他添加值的方法也是可用的,例如 addAt0(X0 value0, X1 value1) 返回六位组等等,直到带有六个参数的 addAt0()。其他类似的方法是 addAt1(X0 value),它在 index0 处添加一个值,并且具有与 addAt2() 类似的方法,带有六个参数。 |
static <X> Ennead<X,X,X,X,X,X,X,X,X > fromArray(X[] array) | 从数组创建元组。 |
static <X> Ennead<X,X,X,X,X,X,X,X,X > fromCollection(Collection<X> collection) | 从集合创建元组。 |
static <X> Ennead<X,X,X,X,X,X,X,X,X > fromIterable(Iterable<X> iterable) | 从迭代器创建元组。 |
static <X> Ennead<X,X,X,X,X,X,X,X,X > fromIterable(Iterable<X> iterable, int index) | 从迭代器对象创建元组,从指定索引开始。 |
int getSize() | 返回元组的大小。 |
A getValue0() |
返回索引 0 处元组的值。 同样,从 getValue1() 到 getValue3() 返回索引 1 处的值,依此类推。 |
Ennead<X,B,C,D,E,F,G,H,I> removeFrom0() |
删除索引 0 处元组的值后返回元组。 类似地,removeFrom1() 到 removeFrom3() 在删除索引 1 处的元组值后返回元组,依此类推。 |
<X> Ennead<X,B,C,D,E,F,G,H,I> setAt0(X value) | 将元组的值设置在索引 0 处。 |
static <A> Ennead<A,B,C,D,E,F,G,H,I> with(A value0, B value1, C value2, D value3, E value4, F value5, G value6, H value7, I value8) | 使用给定值创建元组。 |
5 JavaTuples Ennead类的例子
让我们看一个简单的JavaTuples Ennead类示例。
package cn.xnip;
import org.javatuples.Decade;
import org.javatuples.Ennead;
import org.javatuples.Octet;
import java.util.ArrayList;
import java.util.List;
public class TupleTester {
public static void main(String args[]){
Ennead<Integer, Integer, Integer, Integer, Integer,
Integer,Integer,Integer, Integer>
ennead = Ennead.with(5, 6, 7,8,9,10,11,12,13);
System.out.println(ennead);
boolean isPresent = ennead.contains(5);
System.out.println("5 is present: " + isPresent);
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
list.add(6);
list.add(7);
list.add(8);
list.add(9);
Decade<Integer, Integer, Integer, Integer, Integer,
Integer, Integer, Integer, Integer, String> decade = ennead.add("Test");
System.out.println(decade);
Integer value = ennead.getValue0();
System.out.println(value);
Octet<Integer, Integer, Integer, Integer,Integer,
Integer,Integer, Integer> octet = ennead.removeFrom0();
System.out.println(octet);
Ennead<Integer, Integer, Integer, Integer, Integer,
Integer, Integer, Integer,Integer> ennead1 = Ennead.fromCollection(list);
System.out.println(ennead1);
}
}
输出结果为: