CUBは子供の白熊

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

第1章 ラムダ式とは : 問題 7 : 二つのラムダ式を続けて実行

問題 7

staticメソッドandThenを書け
andThenメソッドは、二つのRunnableインターフェースをパラメータとして受け取り、最初のRunnableを実行した後に二つ目のRunnableを実行するRunnableを返す

そしてandThenメソッドを呼び出すメインメソッドでは、二つのラムダ式andThenメソッドに引き渡せ

解答

andThenメソッド

public static Runnable andThen(Runnable first, Runnable second) {
    return new Runnable() {
        public void run() {
            first.run();
            second.run();
        }
    };
}

andThenメソッドラムダ式を使って呼び出してみる

Runnable runner = andThen(
    () -> System.out.println("最初の Runnable"),
    () -> System.out.println("次の Runnable")
);
new Thread(runner).start();