LINQ操作数组代码(交集,并集,差集,最值,平均,去重复)_实用技巧

下面以数组为例,展示一些常用LINQ操作。

复制代码 代码如下:

static void Main(string[] args)
{
int[] a = { 1, 2, 3, 4, 5, 6, 7 };
int[] b = { 4, 5, 6, 7, 8, 9, 10 };
int[] c = { 1, 2, 3, 3, 4, 1, 2, 4, 6, 1, 6, 5 };

// 交集
var fuck = a.Intersect(b);

// 并集
var shit = a.Union(b);

// a有b没有的
var diff1 = a.Except(b);

// b有a没有的
var diff2 = b.Except(a);

var max = a.Max();
var min = a.Min();
var avg = a.Average();
var dis = c.Distinct();

Print(fuck);
Print(shit);
Print(diff1);
Print(diff2);
Console.WriteLine(max);
Console.WriteLine(min);
Console.WriteLine(avg);
Print(dis);

Console.ReadKey();
}

private static void Print(IEnumerable<int> list)
{
foreach (var item in list)
{
Console.Write(item + " ");
}
Console.WriteLine();
}

有图有真相:

一些参考:
http://msdn.microsoft.com/zh-cn/library/bb397894.aspx
http://msdn.microsoft.com/en-us/library/system.linq.enumerable.intersect.aspx

时间: 2024-09-12 14:03:00

LINQ操作数组代码(交集,并集,差集,最值,平均,去重复)_实用技巧的相关文章

asp.net代码中修改web.config节点的具体方法_实用技巧

但是这个变量不会一个固定的值,会根据实际情况而发生变化,比如在需要读取一个配置文件的路径,而这个路径是站点发布的实际硬盘路径,如果直接是编译时状态,没有问题.但是如果站点iis更换路径,就需要修改这个web.config中的参数.如果能将这个编译时状态修改为运行时状态,那将更为合理和方便.这就需要存在一种在代码中能够动态修改web.config的方案.  代码  复制代码 代码如下:   /// <summary>          /// 写入web.config          ///

Asp.Net 通用数据操作类 (附通用数据基类)第1/2页_实用技巧

文章内容为本站编辑,创作.你可以任意转载.发布.使用但请务必以明文标注文章原始出处及本声明 http://www.opent.cn  作者:浪淘沙此贴的方法会持续更新, 此文件要引用与数据操作的基类 using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.Web

Asp.Net+XML操作基类(修改,删除,新增,创建)第1/2页_实用技巧

/**********************************************************************************  *   * 功能说明:XML处理基类  * 作者: 刘功勋;  * 版本:V0.1(C#2.0);时间:2006-12-13  *   * *******************************************************************************/ using System;

asp.net LC.exe已退出代码为 -1的原因分析及解决方法_实用技巧

可能的原因是: 这个第三方组件是个商业组件,他在组件的主使用类定义了 LicenseProvider(typeof(LicFileLicenseProvider)) 这个Attribute. VS2005在编译时检测到这个类的时候,会检查到组件使用的是LicFileLicenseProvider这个属性,表示有组件使用的是把许可的辅助信息保存在license.licx文件中,这个文件保存在vs2005中解决方案资源管理器中的Properties文件夹内. 这个文件的内容实际上是个引用,他保存着你

Swift使用LINQ操作数组/集合(附Swift的LINQ扩展、及替代方法)

一,什么是LINQ LINQ 是 Language Integrated Query(语言集成查询)的简称.它是微软在.NET 3.5中引入的重要功能.既然是微软推出的,那对应的编程言自然是c#和Visual Basic语言. 1,LINQ的作用 让我们可以使用相同API(类似SQL的语法来查询)操作不同的数据源.比如:SQL Server.Oracle.XML以及内存中的数据集合,当然开发人员也可以使用其提供的扩展框架添加更多的数据源. 2,LINQ的查询操作符 LINQ定义了大约40个查询操

asp.net gridview实现全选,反选与删除记录的操作代码_实用技巧

gridview全选操作 复制代码 代码如下: 'columns'=>array( array( 'class'=>'CCheckBoxColumn', //'header'=>'全选', //'value'=>'$data->id', //'checked'=>'true', 'htmlOptions'=>array( 'width'=>'30', 'style'=>'text-align:center', ), ), 复制代码 代码如下: <

ADO.Net对oracle数据库操作的实例代码_实用技巧

首先要写连接字符串 可以在web.config里写上 复制代码 代码如下: <connectionStrings>     <add name="oracleson" connectionString="Data Source=dingsenorcl;Persist Security Info=True;User ID=ds;Password=ds;Unicode=True" providerName="System.Data.Oracl

集合类Array List HashTable实例操作练习_实用技巧

集合常用操作添加.遍历.移除 命名空间System.Collections ArrayList 可变长度数组,使用类似于数组 属性 Capacity Count 方法 Add() AddRange() Remove() RemoveAt() Clear() Contains() ToArray() Hashtable 键值对(KeyValuePair)的集合,类似于字典 a.ArrayList对值类型的操作 复制代码 代码如下: using System; using System.Collec

ASP.NET MVC数组模型绑定详解_实用技巧

在ASP.NET MVC中使用Razor语法可以在视图中方便地展示数组,如果要进行数组模型绑定,会遇到索引断裂问题,如下示例: <input type="text" name="[0].Name" /> <input type="text" name="[1].Name" /> <input type="text" name="[2].Name" />