2015年1月2日金曜日

Any

■public static bool Any
(this IEnumerable source);
// 概要:
// シーケンスに要素が含まれているかどうかを判断します。
//
// パラメーター:
// source:
// 空かどうかを確認する System.Collections.Generic.IEnumerable
//
// 型パラメーター:
// TSource:
// source の要素の型。
//
// 戻り値:
// ソース シーケンスに要素が含まれている場合は true。それ以外の場合は false。
//
// 例外:
// System.ArgumentNullException:
// source が null です。

引数がないと単純に要素を持っているかどうかを判定するだけのようですね。


■public static bool Any(this IEnumerable source, Func predicate);
// 概要:
// シーケンスの任意の要素が条件を満たしているかどうかを判断します。
//
// パラメーター:
// source:
// 述語を適用する要素を含む System.Collections.Generic.IEnumerable
//
// predicate:
// 各要素が条件を満たしているかどうかをテストする関数。
//
// 型パラメーター:
// TSource:
// source の要素の型。
//
// 戻り値:
// 指定された述語でソース シーケンスの要素がテストに合格する場合は true。それ以外の場合は false。
//
// 例外:
// System.ArgumentNullException:
// source または predicate が null です。

要素中に少なくとも一つ、引数に渡した関数がtrueであればtrueを返す

using System;
using System.Linq;

namespace SampleCode {
    class Program {
        static void Main(string[] args) {

            int[] emptyList = { };
            //要素はありますか?
            Console.WriteLine(emptyList.Any()); //False
            
            int[] numberList = { 1, 3, 5, 7 };
            //要素はありますか?
            Console.WriteLine(numberList.Any()); //True

            //2の倍数はありますか?
            Console.WriteLine(numberList.Any(num => num % 2 == 0)); //False

            //3の倍数はありますか?
            Console.WriteLine(numberList.Any(num => num % 3 == 0)); //True
        }
    }
}

0 件のコメント:

コメントを投稿