JavaTuples - 获取值


元组具有 getValueX() 方法来获取值,而 getValue() 是一个通过索引获取值的通用方法。例如 Triplet 类具有以下方法。

  • getValue(index) - 返回从 0 开始的索引处的值。

  • getValue0() - 返回索引 0 处的值。

  • getValue1() - 返回索引 1 处的值。

  • getValue2() - 返回索引 2 处的值。

特征

  • getValueX() 方法是类型安全的,不需要强制转换,但 getValue(index) 是通用的。

  • 元组具有最多元素计数的 getValueX() 方法。例如,Triplet 没有 getValue3() 方法,但 Quartet 有。

  • 语义类 KeyValue 和 LabelValue 有 getKey()/getValue() 和 getLabel()/getValue() 而不是 getValue0()/getValue1() 方法。

例子

让我们看看 JavaTuples 的实际应用。在这里,我们将了解如何使用各种方式从元组中获取值。

在C:\>JavaTuples中创建一个名为 TupleTester 的 java 类文件。

文件:TupleTester.java

package com.tutorialspoint;
import org.javatuples.KeyValue;
import org.javatuples.Pair;
public class TupleTester {
   public static void main(String args[]){
      //Create using with() method
      Pair<String, Integer> pair = Pair.with("Test", Integer.valueOf(5));   
      Object value0Obj = pair.getValue(0);
      Object value1Obj = pair.getValue(1);
      String value0 = pair.getValue0();
      Integer value1 = pair.getValue1();
      System.out.println(value0Obj);
      System.out.println(value1Obj);
      System.out.println(value0);
      System.out.println(value1);  
	   KeyValue<String, Integer> keyValue = KeyValue.with(
         "Test", Integer.valueOf(5)
      );
      value0 = keyValue.getKey();
      value1 = keyValue.getValue();
      System.out.println(value0Obj);
      System.out.println(value1Obj);
   }
}

验证结果

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

输出

验证输出

Test
5
Test
5
Test
5