CUBは子供の白熊

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

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

問題

Pair<T>クラスに対するflatMapメソッドを定義できるか?
できるとしたら、それは何か?
できないとしたら、その理由は何か?

解答

PairflatMapは定義できない

理由は

Pairの要素数が固定されている

からである

Pairは、明らかにコンテナである
でも、その要素数は 2 個しか駄目である

例えば、二つのPairから一つのPairを生成しようとしたら

Pair<Pair<T>>

というネストしたオブジェクトにしかできない
これをフラット化しようとしても、Pairクラスでは無理である