【发布时间】:2014-12-18 23:59:41
【问题描述】:
例如,我有一个这样的类型:
public class Stuff
{
public Double StuffAmount;
public String StuffDescription;
public DateTime StuffDate;
}
我需要检查标准偏差和I've found those solutions elsewhere on stackoverflow 等内容。但是要按照他们提出的方式去做,我需要做这样的事情:
List<Double> stuffAmounts = new List<Double>();
foreach (var s in List<Stuff>)
{
stuffAmounts.Add(s.StuffAmount);
}
//now I have a list of doubles that I can do frequently referenced math functions with
有没有办法做something like this 而不必创建一个新列表,只需使用我已经具有双打作为属性的复杂类型?
【问题讨论】:
-
您可以从
Stuffs 的可枚举中Select相关属性的可枚举。具体来说:var stuffAmounts = myListOfStuff.Select(s => s.StuffAmount); -
只是为了添加到@Asad 的有用评论,您还可以执行
List<Double> stuffAmounts = myListOfStuff.Select(s => s.StuffAmount).ToList();以将值放入List<Double>(而不是IEnumerable<Double>,.Select返回默认)。