第77集 - 链接而不是for循环

时间:2010-01-13 22:37:53

标签: linq loops terminology for-loop

在第77集中,Joel和Jeff正在讨论使用链接而不是for循环。我查看了Stack Overflow,Google和Wikipedia,但找不到任何对链接构造的引用。我能找到的最接近的东西是一个自引用链表,它可能会无限循环。链接是Links编程语言的一个特性吗?如果不是,那么在这种情况下链接意味着什么。

2 个答案:

答案 0 :(得分:2)

是的,我很确定他们说LINQ

在.Net中,它是一个非常有用的功能,允许您使用看起来像SQL一样可疑的语法从对象集合中“选择”项目:

List<Person> personList = // maybe passed into a method or whatever
IEnumerable<Person> filteredList = from p in personList
                                   where p.Age > ageThreshold
                                   select p
return filteredList.ToList<Person>();

有一本很棒的曼宁书:“LINQ in Action”如果你想了解更多,他们会有一些可下载的样本章节。

答案 1 :(得分:2)

我确信他们正在讨论使用LINQ(语言集成查询),而不是 links 来替换foreach循环。

var stuff = list.Where( l => l.StartsWith( "a" ) ).ToList();

var stuff = (from l in list
            where l.StartsWith("a")
            select l).ToList();

VS

var stuff = new List<string>();
foreach (var item in list)
{
    if (item.StartsWith("a"))
    {
         stuff.Add( a );
    }
}