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胡更多的应用将展开。
linq读书笔记1-linq 初步的更多相关文章
- linq读书笔记3-操作符之select与selectmany
linq对数据的查询方式的表达形式主要有两种: var demo =from p in pList where p.id=*** select p; var demo =pList.where(p=& ...
- linq读书笔记2-查询内存中的对象
上次我们说到了linq对数组内容的检索,自.net2.0以后,泛型成了很常见的一种应用技术,linq对泛型的检索也提供了完善的支持 如对list类型的支持,范例如下: class Program ...
- 读书笔记 C# Linq查询之group关键字浅析
在C#中,自从有了Linq查询表达式后,程序员对可被迭代的序列或列表执行一系列的筛选.排序.过滤.分组.查询等操作.本文章所要讲述的是group关键字. Linq查询表达式,是以from关键字开头,以 ...
- [读书笔记]C#学习笔记六: C#3.0Lambda表达式及Linq解析
前言 最早使用到Lambda表达式是因为一个需求:如果一个数组是:int[] s = new int[]{1,3,5,9,14,16,22};例如只想要这个数组中小于15的元素然后重新组装成一个数组或 ...
- 2019.03.22 读书笔记 Linq中的IEnumerable与IQueryable
Linq主要分为 Linq to object .Linq to XML .Linq to sql(现在都用EF了). 针对object和sql,微软分别设计了两套接口IEnumerable.IQue ...
- linq学习笔记
最近在学习linq的一些基础知识,看了c#高级编程及阅读了园子内部几篇优秀的博文,有所体会,感觉应该记录下来,作为以后复习使用.都是一些最基础的知识,大致分为三个部分:linq预备知识:linq查询: ...
- (转)Linq学习笔记
写在前面 最近在看Linq,在博客园看到这篇文章,写的通俗易懂,转来和大家一起做个分享.原文地址http://www.cnblogs.com/goscan/archive/2011/05/05/Lin ...
- LINQ学习笔记(一)基本语法
1.LINQ简介 LINQ是Language Integrated Query的简称,它是集成在.NET编程语言中的一种特性.包括五个部分:LINQ to Objects.LINQ to DataSe ...
- LINQ学习笔记(一)
LINQ,语言集成查询(Language Integrated Query)是一组用于C#和Visual Basic语言的扩展. 它允许编写C#或Visual Basic代码以查询数据库相同的方法操作 ...
随机推荐
- Map Resource Definition 中type为 'ArcGIS Server Local'.
在使用 MapResourceManager, Map进行 地图显示 时, 在 Map Resource Definition 的 type 为 ArcGIS Server Local时概述. 1,打 ...
- 关于textarea标签在谷歌跟火狐可以拖动大小
关于textarea标签在谷歌和火狐可以拖动大小 而在IE是不会出现这种情况的 解决的方法:我们给这个标签加个 resize: none; 就可以解决了
- OpenGL ES 2.0 顶点着色器的妙用
1.飘扬的旗帜(水面起伏) 基本原理 绘制一帧画面时由顶点着色器根据一定的规则变换各个顶点的位置,即可得到旗帜迎风飘扬的效果. 为了使旗帜的飘动过程比较平滑,采用基于正弦曲线的顶点位置变换规则.
- Html5 学习之 Html5功能判断插件 Modernizr
---恢复内容开始--- Modernizr 浏览器对HTML5和CSS3开发的功能检测类库 由于当前用户使用的浏览器版本较多,对H5和CSS3的支持也各不相同.前端的开发者,在使用一些新的特性的时候 ...
- Robot FrameWork 教程链接
1. Robot Framework 教程: http://cgmblog.sinaapp.com/html/category/robot-framework 2. Robot Framework ...
- JAVA回调函数ANDROID中典型的回调地方
在计算机中回调函数是指通过函数参数传递到其他代码类的,某一块可执行代码的引用,这以设计允许了底层代码调用者在高层定义的子程序. 在JAVA里面我们使用接口的方式来实现函数的回调. 回调的通俗就是:程序 ...
- 基于htmlparser实现网页内容解析
基于htmlparser实现网页内容解析 网页解析,即程序自动分析网页内容.获取信息,从而进一步处理信息. 网页解析是实现网络爬虫中不可缺少而且十分重要的一环,由于本人经验也很有限,我仅就我们团队开发 ...
- Baidu百度搜索引擎登录网站 - Blog透视镜
Baidu百度是中国的搜索引擎,有心经营中国市场的网友,自然不能错过,不过Google谷歌已经遭中国封锁,如果你的网站是用Blogger架设的,具有blogspot.com网域的,则会无法浏览. 阅读 ...
- C语言里面关于数组的一个容易忽视的小细节
ginobili@VM_44_28_sles10sp1:~/code> cat test3.cpp #include <stdio.h> int main(){ char a[5] ...
- LeetCode_Climbing Stairs
ou are climbing a stair case. It takes n steps to reach to the top. or steps. In how many distinct w ...