• linq读书笔记1-linq 初步


    至于linq是什么之类的已经有过太多的文章介绍,亦不清楚的胡朋友可以自己搜索一下便可以得到大量的答案

    为了体验linq究竟能带给我们什么体验,我们直接从代码入手:


                string[] words = new string[] { "test","test1","linqtosql","linqtoobject","beautiful"};


                var result = from p in words
                             where p.Length > 5
                             select p;
                Console.WriteLine(result.GetType());
                foreach (var item in result)
                {
                    Console.WriteLine(item);
                }
                Console.Read();

    以上代码即为实现从一个数组中获取长度大于5的集合,linq返回的结果类型可以result.GetType()进行查看,回想一下在没有linq之前我们如果要实现相同的功能的话需要如何实现,是否是需要这样做呢:

    foreach(var item in words)

    {

      if (item.length>5)

        console.writeline(item);

    }

    从以上这两段简单代码上比较似乎linq并没有带给我们什么神奇胡内容,但是我们接着往下看。

    string[] words = new string[] { "test","tes1","linqtosql","linqtoobject","beautiful"};
                var result = from p in words
                             orderby p descending
                             group p by p.Length into tempqroup
                             orderby tempqroup.Key descending
                             select new {
                                 length=tempqroup.Key,
                                 words=tempqroup
                                            };
             
                foreach (var item in result)
                {
                    foreach (var p in item.words)
                    {
                        Console.WriteLine(p);
                    }
                }
                Console.Read();

    以上我们则是实现一个对数组内容按单词长度分组的一个功能,如果我们要使用传统的代码实现 的话会发现将不得不去写很多的代码,对吗?

    好了linq的开胃菜到此结束,后面linq胡更多的应用将展开。

  • 相关阅读:
    用 Java 写一个折半查找?
    阐述 ArrayList、Vector、LinkedList 的存储性能和特性?
    简述一下面向对象的”六原则一法则”?
    如何通过反射调用对象的方法?
    用 Java 写一个单例类?
    事务的 ACID 是指什么?
    如何通过反射创建对象?
    如何通过反射获取和设置对象私有字段的值?
    JDBC 中如何进行事务处理?
    获得一个类的类对象有哪些方式?
  • 原文地址:https://www.cnblogs.com/lijintian/p/3813585.html
Copyright © 2020-2023  润新知