我有一個List<Person>
(人)每個人都有一個List<Kid>
(兒童)這可以用更少的代碼使用lambda來完成嗎?
如果我想找到所有的孩子不到5歲的人,我會做這樣的事情
var peopleWithLittleKids=new List<Person>()
foreach(var p in people)
{
foreach(var kid in p.Kids)
{
if(kid.age<5)
{
peopleWithLittleKids.Add(p);
break;
}
}
}
是否有一種使用lambda的方法?
夥計們,我沒有給你們任何一個人反對票,有人對所有答案投了反對票。 – developer747
*「每個人都有一個'List'(kids)」*與您給出的示例代碼相矛盾,其中'p.Kid'是單個對象。請澄清,因爲這種含糊不清的問題是在答案上產生一羣降薪票。 –
cdhowie
請注意,您的循環方法可以得到改進,因爲當發現一個孩子時它不會'破壞'內部的'foreach'(類似於支出者的'Any')。 –