Effective C# 3rd 読書メモ 43 Single()とFirst()によってクエリの意味をわかりやすくする

Single()はただ1つの要素だけを返す。要素が存在しなかったり、複数の要素が存在した場合には例外が投げられる。必ず1つ存在するものを取得するにはSingle()を使うのが良い。

0個または1個の要素が返る場合は、SingleOrDefault()を使うことができる。この場合にも、複数の要素があった場合には例外が投げられる。0個の場合にはnullが返る。

複数の要素の中で、1つだけ取り出したい場合には、First()またはFirstOrDefault()を使うことができる。

はじめのいくつかの要素を飛ばして取得したい場合、Skip()を使うことで飛ばすことができる。

var answer = (from p in Forwards
                  where p.GoalsScored > 0
                  orderby p.GoalsScored
                  select p).Skip(2).First();

コメントをどうぞ

コメントを残す