JavaTuples - 六元組類



介紹

org.javatuples.Sextet 類表示一個包含六個元素的元組。

類宣告

以下是org.javatuples.Sextet類的宣告:

public final class Sextet<A, B, C, D, E, F>
   extends Tuple
      implements IValue0<A>, IValue1<B>, 
         IValue2<C>, IValue3<D>, IValue4<E>,
            IValue5<F>

類建構函式

序號 建構函式和描述
1

Sextet(A value0, B value1, C value2, D value3, E value4, F value5)

這將建立一個六元組。

類方法

類似地,setAt1()到setAt5()分別設定索引1及其後的值。

序號 方法和描述
1

Septet add(Unit tuple)

此方法返回一個七元組。

類似地,還有其他新增元組的方法,例如add(Pair tuple)返回八元組,add(Quartet tuple)返回十元組。

2

Septet add(X0 value)

此方法向元組新增一個值並返回一個七元組。

類似地,還有其他新增值的方法,例如add(X0 value0, X1 value1)返回八元組,依此類推,最多可以新增四個引數。

3

Septet addAt0(Unit value)

此方法在索引0處新增一個單元元組並返回一個七元組。

類似地,還有其他新增元組的方法,例如addAt0(Pair value)返回八元組,依此類推,直到addAt0(Quartet)。其他類似的方法有addAt1(Unit value),它在索引0處新增一個單元,並有類似的方法直到addAt5(Quartet)。

4

Septet addAt0(X0 value)

此方法在索引0處新增一個值並返回一個七元組。

類似地,還有其他新增值的方法,例如addAt0(X0 value0, X1 value1)返回八元組,依此類推,最多可以新增四個引數。其他類似的方法有addAt1(X0 value),它在索引0處新增一個值,並有類似的方法直到addAt5(),最多可以新增四個引數。

5

static <X> Sextet<X,X,X,X,X,X> fromArray(X[] array)

從陣列建立元組。

6

static <X> Sextet<X,X,X,X,X,X> fromCollection(Collection<X> collection)

從集合建立元組。

7

static <X> Sextet<X,X,X,X,X,X> fromIterable(Iterable<X> iterable)

從可迭代物件建立元組。

8

static <X> Sextet<X,X,X,X,X,X> fromIterable(Iterable<X> iterable, int index)

從可迭代物件建立元組,從指定的索引開始。

9

int getSize()

返回元組的大小。

10

A getValue0()

返回元組中索引0的值。

類似地,getValue1()到getValue5()分別返回索引1及其後的值。

11

Quintet<B,C,D,E,F> removeFrom0()

刪除元組中索引0的值後返回元組。

類似地,removeFrom1()到removeFrom5()分別刪除元組中索引1及其後的值後返回元組。

12

<X> Sextet<X,B,C,D,E,F> setAt0(X value)

設定元組中索引0的值。

13

static <A> Sextet<A,B,C,D,E,F> with(A value0, B value1, C value2, D value3, E value4, F value5)

使用給定值建立元組。

繼承的方法

此類繼承自以下類的方法:

  • org.javatuples.Tuple

  • Object

示例

讓我們看看Sextet類的實際應用。這裡我們將看到如何使用各種方法。

C:\>JavaTuples中建立一個名為TupleTester的java類檔案。

檔案:TupleTester.java

package com.tutorialspoint;
import java.util.ArrayList;
import java.util.List;
import org.javatuples.Quartet;
import org.javatuples.Quintet;
import org.javatuples.Sextet;
import org.javatuples.Septet;
public class TupleTester {
   public static void main(String args[]){
      Sextet<Integer, Integer, Integer, Integer, Integer,Integer> sextet 
         = Sextet.with(5, 6, 7,8,9,10);
      System.out.println(sextet);
      boolean isPresent = sextet.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);
      Septet<Integer, Integer, Integer, Integer, Integer, Integer, String> septet 
         = sextet.add("Test");
      System.out.println(septet);
      Integer value = sextet.getValue0();
      System.out.println(value);
      Quintet<Integer, Integer, Integer, Integer,Integer> quintet 
         = sextet.removeFrom0();
      System.out.println(quintet);
      Sextet<Integer, Integer, Integer, Integer, Integer,Integer> sextet1 
         = Sextet.fromCollection(list);   
      System.out.println(sextet1);
   }
}

驗證結果

使用javac編譯器編譯類,如下所示:

C:\JavaTuples>javac -cp javatuples-1.2.jar ./com/tutorialspoint/TupleTester.java

現在執行TupleTester檢視結果:

C:\JavaTuples>java  -cp .;javatuples-1.2.jar com.tutorialspoint.TupleTester

輸出

驗證輸出

[5, 6, 7, 8, 9, 10]
5 is present: true
[5, 6, 7, 8, 9, 10, Test]
5
[6, 7, 8, 9, 10]
[1, 2, 3, 4, 5, 6]
廣告