すべての要素がスカラーで乗算されている、特定のリストのコピー バージョンを返したいと考えています。
...
int attenuation = 3;
return new List<double>(VoltsPerDivX1.Select(x => x*attenuation));
VoltsPerDivX1
タイプ の既存のリストですList<double>
。それは正しい方法ですか、それともより良い方法がありますか?
これはもう少し慣用的です:
return VoltsPerDivX1.Select(x => x * attenuation).ToList();
Select(...)
また、呼び出しが匿名型を発行する場合にも適切に動作します。あなたの例では、コンストラクター呼び出しのリストのタイプを表現できる必要があります。次のようなことをする場合:
return VoltsPerDivX1
.Select(x => new { original = x, attenuated = x * attenuation })
.ToList();
タイプが匿名であるため、リストのパラメーター タイプを表現できません。. _ IEnumerable
_ .ToList()
もあり.ToArray()
ます。