【C#】再入門 Linq to Objects (1) どのような拡張メソッドがあるかを確認する。

  • 2013.01.27 Sunday
  • 15:39
JUGEMテーマ:コンピュータ

「再入門 Linq to Objects 」はじめました。体系立てて理解するというのが目的です。誤解のないように説明を加えると、このブログで体系立てて説明する気はありません。体系立てて理解するのは私であって、現状は体系だてて説明できないのです。そういう事です。後は察していただければ幸いです。

今回は

System.Linq.Enumerableクラスに存在するpublicなメソッドの一覧を確認したいと思います。Linq to Objectでは、これらのメソッドを組み合わせてロジックを組んだりするので、とりあえず全部知っておけば、いいじゃないかというのが目論見です。

リフレクションを使って確認してみたところ、メソッド名は以下の通りありました。

Where
Select
SelectMany
Take
TakeWhile
Skip
SkipWhile
Join
GroupJoin
OrderBy
OrderByDescending
ThenBy
ThenByDescending
GroupBy
Concat
Zip
Distinct
Union
Intersect
Except
Reverse
SequenceEqual
AsEnumerable
ToArray
ToList
ToDictionary
ToLookup
DefaultIfEmpty
OfType
Cast
First
FirstOrDefault
Last
LastOrDefault
Single
SingleOrDefault
ElementAt
ElementAtOrDefault
Range
Repeat
Empty
Any
All
Count
LongCount
Contains
Aggregate
Sum
Min
Max
Average

「大体、一度は使ったことがあるなー」というのが感想です。恥ずかしながらJoinとGroupJoinは使ったことがありません。SequenceEqualとLongCountとContainsも使ったことがありません。
Conncatを使うべきところをUnionを使ってしまった事があるなーっとか、全て感想です。

今回はここまでです。次からは上から順番に見ていこうと思います。オーバーロードが沢山ありそうなので、大変な気がしてきました。うーん。

-----------------------
参考までにコードを載せておきます。

using System;
using System.Linq;
using System.Reflection;

namespace ConsoleApplication29
{
    class Program
    {
        static void Main()
        {
            var enumerableType = typeof (Enumerable);
            enumerableType
                .GetMethods(BindingFlags.Public | BindingFlags.Static)
                .Select(info => info.Name)
                .Distinct()
                .ToList()
                .ForEach(Console.WriteLine);
        }
    }
}

コメント
コメントする








    
この記事のトラックバックURL
トラックバック

calendar

S M T W T F S
    123
45678910
11121314151617
18192021222324
25262728293031
<< August 2019 >>

あわせて読みたい

あわせて読みたいブログパーツ

selected entries

categories

archives

recent comment

  • 【キーボード】6年前のRealForceを復活させることはできる!?その3
    art55 (05/22)
  • 【キーボード】6年前のRealForceを復活させることはできる!?その3
    分解大好き (05/18)
  • 【.NET Framework 4.5】 IListがIReadOnlyListを継承してない理由。
    art55 (02/04)
  • 【.NET Framework 4.5】 IListがIReadOnlyListを継承してない理由。
    Gen (02/04)
  • 【キーボード】RealForce が壊れて帰ってきた。
    art55 (04/29)
  • 【.NET Framework 4.5】 IListがIReadOnlyListを継承してない理由。
    art55 (02/23)
  • 【.NET Framework 4.5】 IListがIReadOnlyListを継承してない理由。
    かるあ (02/22)
  • 【C#】Dictionaryの実装・データ構造・アルゴリズムを観察する。
    art55 (01/16)
  • 【C#】Dictionaryの実装・データ構造・アルゴリズムを観察する。
    karuakun (01/16)
  • 【NetOffice】【Excel】死なないExcelプロセスをKillする。
    art55 (12/05)

recent trackback

recommend

recommend

recommend

C#プログラマのための.NETアプリケーション最適化技法 (Programmer's SELECTION)
C#プログラマのための.NETアプリケーション最適化技法 (Programmer's SELECTION) (JUGEMレビュー »)
Sasha Goldshtein,Dima Zurbalev,Ido Flatow,サシャ・ゴルドシュタイン,ディマ・ズルバレフ,イド・フラトー

recommend

ろんりと集合
ろんりと集合 (JUGEMレビュー »)
中内 伸光
とてもわかりやすいです。

recommend

recommend

シャノン・ノイマン・ディジタル世界
シャノン・ノイマン・ディジタル世界 (JUGEMレビュー »)
市川 忠男
4章がリレーショナルデータベースな内容になってます。ページ数があまりありませんが、ポイントがものすごく的確にまとまっていて、感動します。

recommend

recommend

東プレ Realforce91UBK-S 静音キーボード 静電容量無接点方式 変荷重 ブラック NG01BS
東プレ Realforce91UBK-S 静音キーボード 静電容量無接点方式 変荷重 ブラック NG01BS (JUGEMレビュー »)

テンキーレス、静音のRealForce91UBK-S。スコスコ感がたまらなく気持ちいいです。家と会社で2台持ってます。

recommend

recommend

プログラミング.NET Framework 第4版 (プログラミングシリーズ)
プログラミング.NET Framework 第4版 (プログラミングシリーズ) (JUGEMレビュー »)
Jeffrey Richter
発売予定美 2013年10月10日。.NET Frameworkとお付き合いする人のバイブルですね。

recommend

recommend

キャット・シッターの君に。
キャット・シッターの君に。 (JUGEMレビュー »)
喜多嶋 隆
私のイラストレータデビュー本です。

recommend

Essential .NET ― 共通言語ランタイムの本質
Essential .NET ― 共通言語ランタイムの本質 (JUGEMレビュー »)
ドン・ボックス,クリス・セルズ,Don Box,Chris Sells,吉松 史彰

links

profile

search this site.

others

mobile

qrcode

powered

無料ブログ作成サービス JUGEM