Javaでタプル
お仕事でJavaの開発をしているのだけれど、どうしても複数の値を返す必要がいくつかありました。
それ専用のクラスをその都度作るのもイマイチだし、
Object[]で返すのもダサい。
Scalaならタプルが使えるのに・・・。
なので、Javaでタプルを作ってみました。
/** 2つの要素を持つImmutableなタプル */ public class Tuple2<T1, T2> { public final T1 _1; public final T2 _2; public Tuple2(T1 _1, T2 _2) { this._1 = _1; this._2 = _2; } }
使い方です。
/** intとStringを返すメソッド. */ Tuple2<Integer, String> getIntStr() { // ... return new Tuple2<Integer, String>(5, "ほげ"); } void foo() { Tuple2<Integer, String> ret = getIntStr(); int n = ret._1; String s = ret._2; }