Javatuples 简明教程

JavaTuples - Pair Class

Introduction

org.javatuples.Pair 类表示一个包含两个元素的元组。

Class Declaration

以下是 org.javatuples.Pair 类的声明:

public final class Pair<A,B>
   extends Tuple
      implements IValue0<A>, IValue1<B>

Class Constructor

Sr.No.

Constructor & Description

1

Pair(A value0, B value1) 这将创建一个 Pair 元组。

Class Methods

Sr.No.

Method & Description

1

Triplet add(Unit tuple) 此方法返回元组 Triplet。类似的,还提供了其他方法来添加元组,例如 add(Pair tuple) 返回 Quartet,而 add(Octet tuple) 返回 Decade 元组。

2

Triplet add(X0 value) 此方法向元组添加一个值并返回元组 Triplet。类似地,还提供了其他方法来添加值,例如 add(X0 value0, X1 value1) 返回 Quartet,依此类推,最多 add() 带有八个参数。

3

Triplet addAt0(Unit value) 此方法在索引 0 处添加元组 Unit 并返回元组 Triplet。类似的,还提供了其他方法来添加元组,例如 addAt0(Pair value) 返回 Quartet,依此类推,最多到 addAt0(Octet)。其他类似的方法有 addAt1(Unit value),它在索引 0 处添加一个单位,并有类似的方法,最多到 addAt2(Octet)。

4

Triplet addAt0(X0 value) 此方法在索引 0 处添加一个值并返回元组 Triplet。类似的,还提供了其他方法来添加值,例如 addAt0(X0 value0, X1 value1) 返回 Quartet,依此类推,最多 addAt0() 带有八个参数。其他类似的方法有 addAt1(X0 value),它在索引 0 处添加一个值,并有类似的方法,最多到 addAt2() 带有八个参数。

5

static &lt;X&gt; Pair&lt;X,X&gt; fromArray(X[] array) 从数组创建元组。

6

static &lt;X&gt; Pair&lt;X,X&gt; fromCollection(Collection&lt;X&gt; collection) 从集合创建元组。

7

static &lt;X&gt; Pair&lt;X,X&gt; fromIterable(Iterable&lt;X&gt; iterable) 从可迭代对象创建元组。

8

static &lt;X&gt; Pair&lt;X,X&gt; fromIterable(Iterable&lt;X&gt; iterable, int index) 从可迭代对象创建元组,从指定索引开始。

9

int getSize() 返回元组的大小。

10

A getValue0() 返回索引 0 处元组的值。类似地,getValue1() 返回索引 1 处的值。

11

Unit&lt;B&gt; removeFrom0() 在移除索引 0 处元组值后返回元组。类似地,removeFrom1() 返回在移除索引 1 处元组值后的元组。

12

&lt;X&gt; Pair&lt;X,B&gt; setAt0(X value) 设置索引 0 处元组的值。

13

static &lt;A,B&gt; Pair&lt;A,B&gt; with(A value0, B value1) 使用给定值创建元组。

Methods inherite

此类从以下类中继承方法:

  1. org.javatuples.Tuple

  2. Object

Example

让我们看看 Pair 类在实际中的使用。在此,我们将了解如何使用各种方法。

C:&gt;JavaTuples 中创建一个名为 TupleTester 的 Java 类文件。

文件:TupleTester.java

package com.tutorialspoint;
import java.util.ArrayList;
import java.util.List;
import org.javatuples.Pair;
import org.javatuples.Triplet;
import org.javatuples.Unit;

public class TupleTester {
   public static void main(String args[]){
      Pair<Integer, Integer> pair = Pair.with(5,6);
      System.out.println(pair);
      boolean isPresent = pair.contains(5);
      System.out.println("5 is present: " + isPresent);
      List<Integer> list = new ArrayList<>();
      list.add(1);
      list.add(2);
      Triplet<Integer,Integer, String> triplet = pair.add("Test");
      System.out.println(triplet);
      Integer value = pair.getValue0();
      System.out.println(value);
      Unit<Integer> unit = pair.removeFrom0();
      System.out.println(unit);
      Pair<Integer, Integer> pair1 = Pair.fromCollection(list);
      System.out.println(pair1);
   }
}

Verify the result

使用以下 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

Output

验证输出

[5, 6]
5 is present: true
[5, 6, Test]
5
[6]
[1, 2]