Predicateでデリゲート

プログラミングC# 第6版 5.3


引き続きデリゲートの話です。

Predicateとは戻り値がbool型で引数がT型のデリゲートとのことです。

使い方としてはActionとほぼ同じなんですが一応確認しておきます。

using System;

class Program {
    public static bool Foo (int i) {
        return i % 2 == 0;
    }
    
    static void Main () {
        Predicate<int> dobj = Foo;
        
        if ( dobj(10) ) {
            Console.WriteLine("偶数だよ!");
        }
        else {
            Console.WriteLine("奇数だよ!");
        }
    }
}
$ main
偶数だよ!

戻り値にboolが返ってくるので何かしらの実行結果を返すことができて便利ですね。