如何将foreach转换为linq表达式?
var list = new List<Book>();
foreach (var id in ids)
{
list.Add(new Book{Id=id});
}
Run Code Online (Sandbox Code Playgroud)
p.s*_*w.g 20
这非常直截了当:
var list = ids.Select(id => new Book { Id = id }).ToList();
Run Code Online (Sandbox Code Playgroud)
或者如果您更喜欢查询语法:
var list = (from id in ids select new Book { Id = id }).ToList();
Run Code Online (Sandbox Code Playgroud)
另请注意,ToList()只有在您真正需要时才需要List<Book>.否则,通常最好利用Linq的惰性评估能力,并允许Book仅按需创建对象对象.
| 归档时间: |
|
| 查看次数: |
13028 次 |
| 最近记录: |