【VB.NET】LINQ友の会【C#, C♯, C#】at TECH
【VB.NET】LINQ友の会【C#, C♯, C#】 - 暇つぶし2ch35:デフォルトの名無しさん
08/02/15 10:20:31
DBを使わなくてもLINQは便利なんだよ~!ってことを布教するためw、
普通のコレクションに対してロジックを実行するクエリのサンプルを示してみます。
>>10が言うように、グループ化の処理をクエリ一発で書けるのは実に魅力的です。

ファイル名を格納したstring配列 files に対して処理を行います。

// 拡張子ごとにファイル名をグループ化するクエリ
var extGroupQuery = from filename in files
          let ext = System.IO.Path.GetExtension(filename).ToLower()
          group filename by ext into extGroup
          select extGroup;

// グループ化したクエリは2重のIEnumerable<T>になってます
foreach (var extGroup in extGroupQuery)
{
  Console.WriteLine("Extension: {0}, Count: {1}", extGroup.Key, extGroup.Count());

  foreach (var filename in extGroup)
  {
    Console.WriteLine("\t{0}", filename);
  }
}



次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch