C#を勉強中です。

基本文法はひととおり目を通したので、使い方の勉強をしています。

 

そこで、世界の首都の文字列を使って、LINQ to Object の基礎をやりました。

C# スマートすぎてカッコイイ

デザインパターンを超えた

使い方の文法の大きさが違うけど、これはC#をやってるって気がする。

コンテナに対しても、さらに上の概念でプログラミングできるとは・・・!

さすが世界のMicrosoftですね

 

// まずは、定義

var names = new List<string> { "Tokyo", "New Delhi", "Bangkok", "London", "Paris", "Berlin", "Canberra", "Hong Kong" };

// query 変数に Where 句でとりだす

// このとき IEnumerable 型変数が返ってくる

// (オブジェクト指向なのでインターフェイスに対してプログラムする)
IEnumerable<string> query = names.Where(s => s.Length <= 5);
foreach (string s in query)
    Console.WriteLine(s);

// 文字列の長さが5以下の変数を取り出し、それを小文字に変換する
IEnumerable<string> query2 = names.Where(s => s.Length <= 5).Select(s => s.ToLower());
foreach( string s in query2 )
    Console.WriteLine(s);

// IEnumerable型変数なのだが、ここでは流行りの var 型推論を使うとこうなる
var query3 = names.Where(s => s.Length <= 5).Select(s => s.ToLower());
foreach (string s in query3)
    Console.WriteLine(s);