ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Linq 交集、并集等集合理论学习

2021-12-22 10:03:58  阅读:199  来源: 互联网

标签:count Console 并集 交集 List Linq Take var new


   基于C#的Linq技术,如下代码整理:

 private static void Linqtest()
    {
        /////1

        List<int> numbers1 = new List<int>() { 5, 4, 1, 3, 9, 8, 6, 7, 12, 10 };
        List<int> numbers2 = new List<int>() { 15, 14, 11, 13, 19, 18, 16, 17, 12, 10 };
        var newQuerty = numbers1.Concat(
        from n in numbers2
        where !numbers1.Contains(n)
        select n
        ).OrderBy(n => n);
        string count = "";
        foreach (int i in newQuerty)
        {
            count += i + ",";
        }
        Console.WriteLine(count);


        ///2
        List<int> list11 = new List<int>() { 1, 2, 3, 4, 4, 5, 6, 6 };
        var newlist = list11.Distinct();
        count = "";
        foreach (int i in newlist)
        {
            count += i + ",";
        
        }
        Console.WriteLine(count);
    
        ///3
        List<int> list12 = new List<int>() { 1, 2, 3, 4, 4, 5, 6, 6 };
        List<int> list1 = new List<int>() { 5, 6, 6, 7, 8, 9 };
        var newlist1 = list12.Union(list1);
        count = "";
        foreach (int i in newlist1)
        {
            count += i + ",";

        }
        Console.WriteLine(count);

        //4
        List<int> list13 = new List<int>() { 1, 2, 3, 4, 4, 5, 6, 6 };
        List<int> list133 = new List<int>() { 5, 6, 6, 7, 8, 9 };
        var newlist13 = list13.Intersect(list133);
        count = "";
        foreach (int i in newlist13)
        {
            count += i + ",";

        }
        Console.WriteLine(count);

        //5
        List<int> list14 = new List<int>() { 1, 2, 3, 4, 4, 5, 6, 6 };
        List<int> list144 = new List<int>() { 5, 6, 6, 7, 8, 9 };
        var newlist14 = list14.Except(list144);
        count = "";
        foreach (int i in newlist14)
        {
            count += i + ",";

        }
        Console.WriteLine(count);
    }

 命令行执行:

 

 

  LINQ查询操作符的Distinct、Union、Concat、Intersect、Except、Skip、Take、SkipWhile、TakeWhile、Single、SingleOrDefault、Reverse、SelectMany,Aggregate()的使用,合并两个数组,并去掉重复元素,然后排序。

   

List<int> list= new List<int>() {1,2,3,4,4,5,6,6 };
var newlist=list.Skip (3);

List<int> list= new List<int>() {1,2,2,3,4,4,5,6,6 };
var newlist=list.Take (3);

Skip()和Take()方法都是IEnumerable 接口的扩展方法,包括C#中的所有Collections类,如ArrayList,Queue,Stack等等,还有数组和字符串都可以调用这两个方法。

var testList = new List(); //比如 testList里面是 1,2,3,4,5,6,7,8,9,10 var result = testList.Skip(5); //返回值就是 6,7,8,9,10; 
var result = testList.Take(5); //返回值就是 1,2,3,4,5
//搭配使用,一般用来分页
var result = list.Skip(2).Take(2); //返回值 3,4

  so:如果你刻意练习某件事情请超过10000小时,那么你就会达到世界级别。

标签:count,Console,并集,交集,List,Linq,Take,var,new
来源: https://www.cnblogs.com/shiningleo007/p/15718140.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有