私はこのコードスニペットを別の投稿に掲載しましたが、私はそれほど理解していないと説明してくれました。奇妙なインライン配列の初期化
private bool[] GetPageNumbersToLink(IPagedResult result)
{
if (result.TotalPages <= 9)
return new bool[result.TotalPages + 1].Select(b => true).ToArray();
...
C# Array initialization - with non-default value
この上の私のテイク:
new bool[result.TotalPages + 1]
これはデフォルトの値はそれらのすべてに偽であること、totalpagesのそれと同じ長さのboolsの配列を作成します。
.Select(b => true)
これに該当する項目のみを返すためにLINQクエリを使用して、それはの、戻って新しい配列に行く必要ので、それらのすなわちどれ
.ToArray();
LINQは、IEnumerableをか何かを返しません最初は長さ0を選択しなかった。
私はそれが何をしているのだと思いますが、それは意味をなさない。
「選択」という言葉は、次のように混同されることがあります。**「フィルタ」**ソース(ただし、「Where」と呼ばれます)。実際にはそれは次のことを意味します:** "プロジェクト" **ソース。 –