C# のコードを読む機会があったので、調べたことを記録しておく。
MS の日本語ドキュメントは機械翻訳なので時々意味不明。英語で読んだ方がいいかも?
null 許容参照型。あるいは null 許容値型。
- https://docs.microsoft.com/ja-jp/dotnet/csharp/nullable-references
- https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/builtin-types/nullable-value-types
null 合体演算子。a ?? b
で a
が null
の場合に限り b
が評価される。
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/operators/null-coalescing-operator
辞書 Dictionary のメソッド。キーの存在チェックと値の取得を一挙に行う。
dict.TryGetValue(key, out var value)
でキーが存在すれば true
が返され、かつ引数の value に取得した値が入る。キーが存在しなければ false
が返される。
統合言語クエリ。コレクション操作メソッドの集合体。SQL の構文に似せたメソッド群からなるが、SQL と直接関係があるわけではない。
関数型言語のコレクション操作をイメージするとよさそう。
遅延評価であり ToList()
や ToArray()
などのアウトプットを要求するメソッドを呼ばない限りクエリは評価されない。