Class Triple<L,M,R>

java.lang.Object
org.aoju.bus.core.lang.tuple.Triple<L,M,R>
Type Parameters:
L - 左元素类型
M - 中间元素类型
R - 右元素类型
All Implemented Interfaces:
Serializable, Comparable<Triple<L,M,R>>
Direct Known Subclasses:
ImmutableTriple, MutableTriple

@ThreadSafe public abstract class Triple<L,M,R> extends Object implements Comparable<Triple<L,M,R>>, Serializable
由三个元素组成的三元组 这个类是一个定义基本API的抽象实现 表示元素为'left'、'middle'和'right'. 子类实现可以是可变的,也可以是不可变的 但是,对可能存储的存储对象的类型没有限制 如果可变对象存储在三元组中,那么三元组本身就会变成可变的
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Details

    • Triple

      public Triple()
  • Method Details

    • of

      public static <L, M, R> Triple<L,M,R> of(L left, M middle, R right)
      获取由三个推断泛型类型的对象组成的不可变三元组
      Type Parameters:
      L - 左元素类型
      M - 中间元素类型
      R - 右元素类型
      Parameters:
      left - 左值可以为null
      middle - 中间可以为null
      right - 右值可以为null
      Returns:
      由三个参数组成的三元组,不为空
    • getLeft

      public abstract L getLeft()
    • getMiddle

      public abstract M getMiddle()
    • getRight

      public abstract R getRight()
    • compareTo

      public int compareTo(Triple<L,M,R> other)
      Specified by:
      compareTo in interface Comparable<L>
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toString

      public String toString(String format)