在 Java 中使用 Pairs 或 2 元组

2022-08-31 04:50:18

我在Java中的Hashtable将受益于具有元组结构的值。在Java中,我可以使用什么数据结构来做到这一点?

Hashtable<Long, Tuple<Set<Long>,Set<Long>>> table = ...

答案 1

我不认为Java中有一个通用的元组类,但自定义的元组类可能像下面这样简单:

public class Tuple<X, Y> { 
  public final X x; 
  public final Y y; 
  public Tuple(X x, Y y) { 
    this.x = x; 
    this.y = y; 
  } 
} 

当然,如何进一步设计这个类在相等性、不可变性等方面有一些重要的含义,特别是如果你打算使用实例作为哈希的键。


答案 2

javatuples是Java中元组的专用项目。

Unit<A> (1 element)
Pair<A,B> (2 elements)
Triplet<A,B,C> (3 elements)

推荐