すべての単語を4文字で表示しようとしています。しかし、なぜそれが機能していないのか分かりません。それは表示されません。linqで選択した後に配列を表示
これはコードです:
IEnumerable<string> query4 = words
.Where(n => n.Length == 4)
.Select(n => n);
DisplayArray(query4);
これは私の表示方法である:
private static void DisplayArray<T>(T[] array)
{
foreach (T item in array)
Console.WriteLine(item);
}
配列ではありませんquery4'先発 'について'を取るか、 'ToArray'を使うようにメソッドを変更してください。 –
juharr
T[]
IEnumrable<T>
に変更します。 'IEnumerableありがとうございます。私はlinqで知っていた。私はそれが配列のような玉虫色であることを意味します –
いいえ、配列は、Linqクエリが設定されていないシーケンスを表す 'IEnumerable'を生成する値のセットを含む構造体であり、 'foreach'か' ToList'か 'ToArray'です。それまでは、実際にはフィルタリングや投影はしません。また、それはあなたがそれを具体化するたびに、フィルタリングと投影を行います。そのため、 'ToList'で終わる多くのLinqクエリが表示されます。 –
juharr