JavaTuples - парный класс
Введение
В org.javatuples.Pair class представляет собой кортеж с двумя элементами.
Объявление класса
Ниже приводится декларация для org.javatuples.Pair класс -
public final class Pair<A,B>
extends Tuple
implements IValue0<A>, IValue1<B>
Конструктор классов
Sr. No. | Конструктор и описание |
---|---|
1 | Pair(A value0, B value1) Это создает парный кортеж. |
Методы класса
Аналогично setAt1 () устанавливает значение индекса 1.
Sr. No. | Метод и описание |
---|---|
1 | Triplet add(Unit tuple) Этот метод возвращает кортеж Triplet. Аналогично доступны другие методы добавления кортежей, например, add (Pair tuple) возвращает Quartet, а upto add (Octet tuple) возвращает Decade tuple. |
2 | Triplet add(X0 value) Этот метод добавляет значение в кортеж и возвращает кортеж Triplet. Аналогичным образом доступны другие методы для добавления значений, например, add (X0 value0, X1 value1) возвращает квартет и так далее до add () с восемью параметрами. |
3 | Triplet addAt0(Unit value) Этот метод добавляет кортеж Unit с индексом 0 и возвращает кортеж Triplet. Аналогичным образом доступны другие методы добавления кортежей, например, addAt0 (значение пары) возвращает квартет и так далее до addAt0 (октет). Другой похожий метод - addAt1 (значение единицы), который добавляет единицу по индексу 0 и имеет аналогичные методы до addAt2 (октет). |
4 | Triplet addAt0(X0 value) Этот метод добавляет значение с индексом 0 и возвращает кортеж Triplet. Аналогичным образом доступны другие методы для добавления значений, например addAt0 (X0 value0, X1 value1) возвращает квартет и так далее до addAt0 () с восемью параметрами. Другой похожий метод - addAt1 (значение X0), который добавляет значение в index0 и имеет аналогичные методы до addAt2 () с восемью параметрами. |
5 | static <X> Pair<X,X> fromArray(X[] array) Создать кортеж из массива. |
6 | static <X> Pair<X,X> fromCollection(Collection<X> collection) Создать кортеж из коллекции. |
7 | static <X> Pair<X,X> fromIterable(Iterable<X> iterable) Создать кортеж из итерируемого. |
8 | static <X> Pair<X,X> fromIterable(Iterable<X> iterable, int index) Создать кортеж из итерируемого, начиная с указанного индекса. |
9 | int getSize() Верните размер кортежа. |
10 | A getValue0() Возвращает значение кортежа с индексом 0. Аналогично getValue1 () возвращает значение с индексом 1. |
11 | Unit<B> removeFrom0() Вернуть кортеж после удаления значения кортежа с индексом 0. Аналогично removeFrom1 () возвращает кортеж после удаления значения кортежа с индексом 1. |
12 | <X> Pair<X,B> setAt0(X value) Установите значение кортежа в индекс 0. |
13 | static <A,B> Pair<A,B> with(A value0, B value1) Создайте кортеж, используя заданное значение. |
Методы наследуют
Этот класс наследует методы от следующих классов -
org.javatuples.Tuple
Object
пример
Давайте посмотрим на парный класс в действии. Здесь мы увидим, как использовать различные методы.
Создайте файл класса Java с именем TupleTester в C:\>JavaTuples.
Файл: 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
Вывод
Проверьте вывод
[5, 6]
5 is present: true
[5, 6, Test]
5
[6]
[1, 2]