C# での array.map() の例は? 質問する

C# での array.map() の例は? 質問する

次の一般的なJavaScript構造を考えてみましょう

var ages = people.map(person => person.age);

年齢の配列である望ましい結果を返します。

これに相当するものはC#? 簡単な例を含めてください。ドキュメントにselectは可能と記載されていますselectAllが、貼り付けて機能するオンラインの例や他の SO の質問が見つかりません。

可能であれば、次の配列を{1,2,3,4}次の に変換する例を示してください{'1a','2a','3a','4a'}。各要素の末尾に「a」を追加して、整数から文字列に変換します。

ベストアンサー1

これは、LINQ で呼び出される投影と呼ばれますSelect。これは、新しい配列 (JavaScript のように.map) を返すのではなく、を返しますIEnumerable<T>。 を使用して配列に変換できます.ToArray

using System.Linq; // Make 'Select' extension available
...
var ages = people.Select(person => person.Age).ToArray();

SelectIEnumerable<T>すべての配列実装で動作します。必要なのは .NET 3.5 とusing System.Linq;ステートメントだけです。

2 番目の例では、次のようなものを使用します。配列は使用されず、シーケンスのみが使用されていることに注意してください。

 var items = Enumerable.Range(1, 4).Select(num => string.Format("{0}a", num));

おすすめ記事