JavaTuples中的Septet类

A. 七重奏 是来自 Java元组 处理3个元素的库。因为这个Septet是一个泛型类,所以它可以包含任何类型的值。 由于Septet是一个元组,因此它还具有JavaTuple的所有特征:

null
  • 他们是 类型安全
  • 他们是 不变的
  • 他们是 可迭代的
  • 他们是 可序列化
  • 他们是 可比较的 (实现可比较的
  • 他们实施 等于 hashCode()
  • 他们还实施 toString()

类别声明

public final class Septet<A, B, C, D, E, F, G> extends Tupleimplements IValue0<A>, IValue1<B>, IValue2<C>, IValue3<D>, IValue4<E>, IValue5<F, IValue6<G>

类层次结构

Object  ↳ org.javatuples.Tuple      ↳ org.javatuples.Septet<A, B, C, D, E, F, G>

创建七元组

  • 来自构造函数 : 语法 :
Septet<A, B, C, D, E, F, G> septet =     new Septet<A, B, C, D, E, F, G>        (value1, value2, value3, value4, value5, value6, value7);
  • 实例 :

JAVA

// Below is a Java program to create
// a Septet tuple from Constructor
import java.util.*;
import org.javatuples.Septet;
class GfG {
public static void main(String[] args)
{
Septet<Integer, Integer.Integer, Integer, Integer, Integer, Integer> septet
= Septet.with(Integer.valueOf( 1 ),
Integer.valueOf( 2 ),
Integer.valueOf( 3 ),
Integer.valueOf( 4 ),
Integer.valueOf( 5 ),
Integer.valueOf( 6 ),
Integer.valueOf( 7 ));
System.out.println(septet);
}
}


  • 输出:
[1, 2, 3, 4, 5, 6, 7]
  • 使用with()方法 :with()方法是JavaTuples库提供的一个函数,用于用这些值实例化对象。 语法 :
Septet<type1, type2, type3, type4, type5, type6, type7> septet =     Septet.with(value1, value2, value3, value4, value5, value6, value7);
  • 实例 :

JAVA

// Below is a Java program to create
// a Septet tuple from with() method
import java.util.*;
import org.javatuples.Septet;
class GfG {
public static void main(String[] args)
{
Septet<Integer, Integer.Integer, Integer, Integer, Integer, Integer> septet
= Septet.with(Integer.valueOf( 1 ),
Integer.valueOf( 2 ),
Integer.valueOf( 3 ),
Integer.valueOf( 4 ),
Integer.valueOf( 5 ),
Integer.valueOf( 6 ),
Integer.valueOf( 7 ));
System.out.println(septet);
}
}


  • 输出:
[1, 2, 3, 4, 5, 6, 7]
  • 来自其他系列 :fromCollection()方法用于从集合创建元组,fromArray()方法用于从数组创建元组。集合/数组的类型必须与元组的类型相同,集合/数组中的值数量必须与元组类匹配。 语法 :
Septet<type1, type2, type3, type4, type5, type6, type7> septet =     Septet.fromCollection(collectionWith_7_value);Septet<type1, type2, type3, type4, type5, type6, type7> septet =     Septet.fromArray(arrayWith_7_value);
  • 实例 :

JAVA

// Below is a Java program to create
// a Septet tuple from Collection
import java.util.*;
import org.javatuples.Septet;
class GfG {
public static void main(String[] args)
{
// Creating Septet from List
List<Integer> list = new ArrayList<Integer>();
list.add( 1 );
list.add( 2 );
list.add( 3 );
list.add( 4 );
list.add( 5 );
list.add( 6 );
list.add( 7 );
Septet<Integer, Integer, Integer, Integer, Integer, Integer> septet
= Septet.fromCollection(list);
// Creating Septet from Array
Integer[] arr = { 1 , 2 , 3 , 4 , 5 , 6 , 7 };
Septet<Integer, Integer, Integer, Integer, Integer, Integer> otherSeptet
= Septet.fromArray(arr);
System.out.println(septet);
System.out.println(otherSeptet);
}
}


  • 输出:
[1, 2, 3, 4, 5, 6, 7][1, 2, 3, 4, 5, 6, 7]

获得价值

getValueX()方法可用于获取索引X处元组中的值。元组中的索引从0开始。因此,索引X处的值代表位置X+1处的值。 语法 :

Septet<type1, type2, type3, type4, type5, type6, type7> septet =     new Septet<type1, type2, type3, type4, type5, type6, type7>        (value1, value2, value3, value4, value5, value6, value7);type1 val1 = septet.getValue0();

实例 :

JAVA

// Below is a Java program to get
// a Septet value
import java.util.*;
import org.javatuples.Septet;
class GfG {
public static void main(String[] args)
{
Septet<Integer, Integer.Integer, Integer, Integer, Integer, Integer> septet
= Septet.with(Integer.valueOf( 1 ),
Integer.valueOf( 2 ),
Integer.valueOf( 3 ),
Integer.valueOf( 4 ),
Integer.valueOf( 5 ),
Integer.valueOf( 6 ),
Integer.valueOf( 7 ));
System.out.println(septet.getValue0());
System.out.println(septet.getValue2());
}
}


输出:

13

设置Septet值

因为元组是 不变的 ,这意味着不可能在任何索引处修改值。因此JavaTuples提供了 setAtX(值) 它在索引X处创建一个具有新值的元组副本,并返回该元组。 语法 :

Septet<type1, type2, type3, type4, type5, type6, type7> septet =     new Septet<type1, type2, type3, type4, type5, type6, type7>                (value1, value2, value3, value4, value5, value6, value7);Septet<type1, type2, type3, type4, type5, type6, type7>     otherSeptet = septet.setAtX(value);

实例 :

JAVA

// Below is a Java program to set
// a Septet value
import java.util.*;
import org.javatuples.Septet;
class GfG {
public static void main(String[] args)
{
Septet<Integer, Integer.Integer, Integer, Integer, Integer, Integer> septet
= Septet.with(Integer.valueOf( 1 ),
Integer.valueOf( 2 ),
Integer.valueOf( 3 ),
Integer.valueOf( 4 ),
Integer.valueOf( 5 ),
Integer.valueOf( 6 ),
Integer.valueOf( 7 ));
Septet<Integer, Integer.Integer, Integer, Integer, Integer, Integer> otherSeptet
= septet.setAt3( 40 );
System.out.println(otherSeptet);
}
}


输出:

[1, 2, 3, 40, 5, 6, 7]

增加价值

通过以下方法可以增加价值: addAtX() 方法,其中X表示要添加值的索引。这个方法返回一个比被调用元组多1个元素的元组。 语法 :

Septet<type1, type2, type3, type4, type5, type6, type7> septet =     new Septet<type1, type2, type3, type4, type5, type6, type7>        (value1, value2, value3, value4, value5, value6, value7);Septet<type 1, type 2, type 3, type 4, type 5, type 6, type 7> septet =     septet.addAtx(value);

实例 :

JAVA

// Below is a Java program to add
// a value
import java.util.*;
import org.javatuples.Septet;
import org.javatuples.Octet;
class GfG {
public static void main(String[] args)
{
Septet<Integer, Integer.Integer, Integer, Integer, Integer, Integer> septet
= Septet.with(Integer.valueOf( 1 ),
Integer.valueOf( 2 ),
Integer.valueOf( 3 ),
Integer.valueOf( 4 ),
Integer.valueOf( 5 ),
Integer.valueOf( 6 ),
Integer.valueOf( 7 ));
Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> octet
= septet.addAt7( 8 );
System.out.println(octet);
}
}


输出:

[1, 2, 3, 4, 5, 6, 7, 8]

在Septet中搜索

可以使用预定义的方法在元组中搜索元素 包含() 。它返回一个布尔值,无论该值是否存在。 语法 :

Septet<type1, type2, type3, type4, type5, type6, type7> septet =     new Septet<type1, type2, type3, type4, type5, type6, type7>        (value1, value2, value3, value4, value5, value6, value7);boolean res = septet.contains(value2);

实例 :

JAVA

// Below is a Java program to search
// a value in a Septet
import java.util.*;
import org.javatuples.Septet;
class GfG {
public static void main(String[] args)
{
Septet<Integer, Integer.Integer, Integer, Integer, Integer, Integer> septet
= Septet.with(Integer.valueOf( 1 ),
Integer.valueOf( 2 ),
Integer.valueOf( 3 ),
Integer.valueOf( 4 ),
Integer.valueOf( 5 ),
Integer.valueOf( 6 ),
Integer.valueOf( 7 ));
boolean exist = septet.contains( 5 );
boolean exist1 = septet.contains( false );
System.out.println(exist);
System.out.println(exist1);
}
}


输出:

truefalse

在Septet中迭代

自从Septet实施 Iterable 界面这意味着它们可以像集合或数组一样进行迭代。 语法 :

Septet<type1, type2, type3, type4, type5, type6, type7> septet =     new Septet<type1, type2, type3, type4, type5, type6, type7>            (value1, value2, value3, value4, value5, value6, value7);for (Object item : septet) {        ...}

实例 :

JAVA

// Below is a Java program to iterate
// a Septet
import java.util.*;
import org.javatuples.Septet;
class GfG {
public static void main(String[] args)
{
Septet<Integer, Integer.Integer, Integer, Integer, Integer, Integer> septet
= Septet.with(Integer.valueOf( 1 ),
Integer.valueOf( 2 ),
Integer.valueOf( 3 ),
Integer.valueOf( 4 ),
Integer.valueOf( 5 ),
Integer.valueOf( 6 ),
Integer.valueOf( 7 ));
for (Object item : septet)
System.out.println(item);
}
}


输出:

1234567

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享