博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LInq之Take Skip TakeWhile SkipWhile Reverse Union Concat 用法
阅读量:7042 次
发布时间:2019-06-28

本文共 3446 字,大约阅读时间需要 11 分钟。

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

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

@陈卧龙的博客

转载地址:http://yqqal.baihongyu.com/

你可能感兴趣的文章
初识Ansible
查看>>
mysql5.6和mariadb远程拉取二进制日志
查看>>
十个实用的linux工具
查看>>
layer给iframe页面传值
查看>>
pxe
查看>>
Linux unit 12
查看>>
远程的POWERSHELL
查看>>
Spark 分析网站排名热度
查看>>
代码经验总结
查看>>
关于san和nas里面backup 和snapshoot的job
查看>>
laravel 服务容器实现原理
查看>>
laravel5自定义分页
查看>>
nginx的upstream目前支持5种方式的分配
查看>>
kill命令详解
查看>>
python基础
查看>>
手机端问题
查看>>
cat
查看>>
iOS修改工程名
查看>>
The RPC Server is unavailable
查看>>
java基础(二)面向对象
查看>>