【问题标题】:Create an object collection based on another collection with different type基于另一个不同类型的集合创建对象集合
【发布时间】:2017-06-13 02:43:03
【问题描述】:
是否可以简化这些陈述?
List<YY> gss = new List<YY>();
foreach (var s in AA)
{
gss.Add(new YY()
{
Color = s.Color,
Offset = s.Offset
});
}
SomeClass.ListYY = gss;
我相信使用 LINQ 是可能的,但我只是不知道如何。
【问题讨论】:
标签:
c#
linq
list
loops
collections
【解决方案1】:
SomeClass.ListYY = AA
.Select(s => new YY() { Color = s.Color, Offset = s.Offset }).ToList();
对于 AA 中的每个 s,选择一个新的 YY 并从 s 填充偏移和颜色 - 然后将结果转换为列表。
【解决方案2】:
SomeClass.ListYY = AA.Select(x => new YY { Color = x.Color, Offset = x.Offset }).ToList();