废话不多说,直接上代码,代码有注释!自行运行测试!

    class Program
{
static void Main(string[] args)
{
string[] names = { "郭靖", "李莫愁", "欧阳晓晓", "黄蓉", "黄药师", "郭靖", "黄蓉" }; //Take()方法:用于从一个序列的开头返回指定数量的元素。
Console.WriteLine("Take方法直接输出前3个元素");
foreach (var name in names.Take())
{
Console.WriteLine(name);
}
var query = from n in names
where n.Length ==
select n;
Console.WriteLine("Take方法输出查询结果的前1个元素");
foreach (var s in query.Take())
{
Console.WriteLine(s);
}
Console.WriteLine("\n\n\n");
///////////////////////////////////////////////////////////////////////
//Skip()方法:用于跳过序列中指定个数的元素。
//////////////////////////////////////////////////////////////////////
Console.WriteLine("Skip方法跳过前3个元素");
foreach (var name in names.Skip())
{
Console.WriteLine(name);
}
Console.WriteLine("Skip方法跳过查询结果的前1个元素");
foreach (var s in query.Skip())
{
Console.WriteLine(s);
}
Console.WriteLine("\n\n\n");
///////////////////////////////////////////////////////////////////////
//TakeWhile()方法:用于取序列中从开头起符合条件的元素,直到遇到不符合条件的元素为止的所有元素。注意:当条件为假时,就停止了,后面的元素不会输出。
//////////////////////////////////////////////////////////////////////
Console.WriteLine("TakeWhile用法1如下");
foreach (var name in names.TakeWhile(A=>A.Length==))
{
Console.WriteLine(name);
}
Console.WriteLine("TakeWhile用法2如下");
//注意:当条件为假时,就停止了,后面的元素不会输出。
foreach (var name in names.TakeWhile((item, index) => item.Length < && index < ))
{
Console.WriteLine(name);
}
Console.WriteLine("\n\n\n");
///////////////////////////////////////////////////////////////////////
//SkipWhile()方法:用于只要满足指定的条件,就跳过序列中得元素。注意:当遇到条件为假时,就停止跳越了,输出剩余的所有元素。
//////////////////////////////////////////////////////////////////////
Console.WriteLine("SkipWhile用法1如下");
foreach (var name in names.SkipWhile(n => n.Length == ))
{
Console.WriteLine(name);
}
Console.WriteLine("SkipWhile用法2如下");
//SkipWhile跳过名字小于4个字,并且索引小于2
foreach (var s in names.SkipWhile((item, index) => item.Length < && index < ))
{
Console.WriteLine(s);
}
Console.WriteLine("\n\n\n");
///////////////////////////////////////////////////////////////////////
//Reverse()方法:用于反转
//////////////////////////////////////////////////////////////////////
Console.WriteLine("Reverse用法1如下");
foreach (var name in names.Reverse())
{
Console.WriteLine(name);
}
Console.WriteLine("\n\n\n");
///////////////////////////////////////////////////////////////////////
//Distinct()方法:用于去掉重复元素
//////////////////////////////////////////////////////////////////////
Console.WriteLine("Distinct用法1如下");
foreach (var name in names.Distinct())
{
Console.WriteLine(name);
}
Console.WriteLine("\n\n\n");
///////////////////////////////////////////////////////////////////////
//Union()方法:用于合并两个序列,并去掉重复元素。
//////////////////////////////////////////////////////////////////////
Console.WriteLine("Union用法1如下");
string[] names2 = { "郭靖", "黄蓉","神雕","小龙女" };
foreach (var name in names.Union(names2))
{
Console.WriteLine(name + " ");
}
Console.WriteLine("\n\n\n");
///////////////////////////////////////////////////////////////////////
//Concat()方法:用于合并两个序列,但不会去掉重复元素。
//////////////////////////////////////////////////////////////////////
Console.WriteLine("Concat用法1如下");
foreach (var name in names.Concat(names2))
{
Console.WriteLine(name + " ");
}
Console.ReadKey();
} }

@陈卧龙的博客

LInq之Take Skip TakeWhile SkipWhile Reverse Union Concat 用法的更多相关文章

  1. LINQ中的陷阱--TakeWhile&SkipWhile

    在用TakeWhile,SkipWhile设置陷阱之前,我们先来看一看他们的兄弟Take和Skip: public static IEnumerable<T> Take<T>( ...

  2. 一次mysql数据关于union+concat用法的记录

    SELECT CONCAT('SELECT COUNT(*) FROM ',table_name,' union all') FROM information_schema.tables WHERE ...

  3. Linq分区操作之Skip,SkipWhile,Take,TakeWhile源码分析

    Linq分区操作之Skip,SkipWhile,Take,TakeWhile源码分析 二:linq的分区操作 常用的分区操作:Take,TakeWhile,Skip,SkipWhile 三:Take ...

  4. Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法

    Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法:在写LINQ语句的时候,往往会看到AsEnumerable() ,AsQueryable() 和T ...

  5. MVC+Spring.NET+NHibernate .NET SSH框架整合 C# 委托异步 和 async /await 两种实现的异步 如何消除点击按钮时周围出现的白线? Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法

    MVC+Spring.NET+NHibernate .NET SSH框架整合   在JAVA中,SSH框架可谓是无人不晓,就和.NET中的MVC框架一样普及.作为一个初学者,可以感受到.NET出了MV ...

  6. union的用法

    union的用法 union用来连接两个查询语句,把两个查询语句的查询结果合并起来,两个查询语句的查询字段个数必须一样,否则会出错,查询的字段可以不一样,类型也可以不一样,但是这样查询的意义不大,如果 ...

  7. C#Linq中的Union All/Union/Intersect和Top/Bottom和Paging和SqlMethods,skip,take,takewhile,skipwhile,编译查询等

    我们继续讲解LINQ to SQL语句,这篇我们来讨论Union All/Union/Intersect操作和Top/Bottom操作和Paging操作和SqlMethods操作 . Union Al ...

  8. [转]C#Linq中的Union All/Union/Intersect和Top/Bottom和Paging和SqlMethods,skip,take,takewhile,skipwhile,编译查询等

    本文转自:http://www.cnblogs.com/suizhikuo/p/3791799.html 我们继续讲解LINQ to SQL语句,这篇我们来讨论Union All/Union/Inte ...

  9. LINQ 中常用函数使用: Take TakeWhile Skip SkipWhile Reverse Distinct

    1,Take 方法 Take方法用于从一个序列的开头返回指定数量的元素. string[] names = { "郭靖", "李莫愁", "欧阳晓晓& ...

随机推荐

  1. Fiddler 使用fiddler发送捕获的请求及模拟服务器返回

    使用fiddler发送捕获的请求及模拟服务器返回 by:授客 QQ:1033553122 1.做好相关监听及代理设置 略 2.发送捕获的请求 如图 3.模拟服务器返回 本例的一个目的是,根据服务器返回 ...

  2. 反编译Apk得到Java源代码

    原文章转载自:http://hi.baidu.com/%CB%BF%D4%B5%CC%EC%CF%C2/blog/item/2284e2debafc541e495403ec.html 本人转载自:ht ...

  3. 《ASP.NET MVC企业实战》(一) MVC开发前奏

    一.工具和方法 学到了一些没用过的工具和方法: a)删除多余的using指令并排序:一个类头部的using一般会有很多用不到的,在完成类的编写后,可以右键选择”组织using”来删除没用的using并 ...

  4. 【Java入门提高篇】Day31 Java容器类详解(十三)TreeSet详解

    上一篇很水的介绍完了TreeMap,这一篇来看看更水的TreeSet. 本文将从以下几个角度进行展开: 1.TreeSet简介和使用栗子 2.TreeSet源码分析 本篇大约需食用10分钟,各位看官请 ...

  5. Java动态生成类以及动态添加属性

    有个技术实现需求:动态生成类,其中类中的属性来自参数对象中的全部属性以及来自参数对象properties文件. 那么技术实现支持:使用CGLib代理. 具体的实现步骤: 1.配置Maven文件: &l ...

  6. 实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制

    记录一下,方便以后复制粘贴 // 方法一: Object.prototype.clone = function() { var o = this.constructor === Array ? [] ...

  7. jquery常用表单操作

    //js将表单序列化成对象 $.fn.serializeObject = function () { var $els = $(this).find("[name]"); var ...

  8. gnome extensions 推荐 (fedora 28 常用gnome 插件备份)

    当我们进行重新安装系统(fedora 28)的时候,需要初始安装一些 gnome 插件,来进行完善我们的使用. 首先我们应该进行安装 gnome-tweak 工具来进行定制化系统. tweak 可以进 ...

  9. HDU ACM 1879 继续畅通工程

    继续畅通工程 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  10. Java7/8 中 HashMap 和 ConcurrentHashMap的对比和分析

    大家可能平时用HashMap比较多,相对于ConcurrentHashMap 来说并不是很熟悉.ConcurrentHashMap 是 JDK 1.5 添加的新集合,用来保证线程安全性,提升 Map ...