コガネブログ

平日更新を目標にUnityやC#などのゲーム開発アレコレを書いていきます

【C#】最大値を持つ要素を返す拡張メソッド

ソースコード

using System;
using System.Collections.Generic;
using System.Linq;

public static class IEnumerableExtensions
{
    public static TSource MaxBy<TSource, TResult>(
        this IEnumerable<TSource> source,
        Func<TSource, TResult> selector
    )
    {
        var value = source.Max( selector );
        return source.First( c => selector( c ).Equals( value ) );
    }
}