zoukankan      html  css  js  c++  java
  • 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胡更多的应用将展开。

  • 相关阅读:
    merge into语句的使用
    mybatis框架下解决数据库中表的列的字段名和实体类属性不相同的问题
    Mybatis框架基于映射文件和配置文件的方式,实现增删改查,可以打印日志信息
    Mybatis框架基于注解的方式,实对数据现增删改查
    java中的泛型和sql中的索引
    SpringMVC框架下的异常处理
    SpringMVC框架下的拦截器
    在SpringMVC框架下实现数据的国际化(即数据实现多国文字之间的转换)
    Java 随机数生成工具RandomUtils
    Java 获取客服端ip地址
  • 原文地址:https://www.cnblogs.com/lijintian/p/3813585.html
Copyright © 2011-2022 走看看