CUBは子供の白熊

Java SE 8 実践プログラミングの練習問題を解く

第3章 ラムダ式を使ったプログラミング : 問題 23 : Pair の map メソッド

問題

T 型の対となる二つのオブジェクトを表すPair<T>クラスに対するmap操作を定義せよ

解答

これは簡単ですね

public class Pair<T> {
    public final T first;
    public final T second;

    public Pair(T first, T second) {
        this.first = first;
        this.second = second;
    }

    // map 操作
    public <U> Pair<U> map(Function<T, U> f) {
        return new Pair<U>(f.apply(first), f.apply(second));
    }
}

本来はequalsメソッドhashCodeメソッドを Override するが、ここでは省略

次の問題 24のflatMapの布石ですかね