想运行本程序,请先做好准备工作,请参考:Linq学习__00__准备工作
(1)在HomeController中新建Index6方法如代码1.1
代码1.1
#region 差集Except、并集Union 和 Concat(TSource)
/// <summary>
/// 访问地址 Home/Index6
/// Except、Distinct、Union 和 Concat(TSource
/// </summary>
/// <returns></returns>
public ActionResult Index6()
{
int[] number1 = { 5, 10, 8, 3, 6, 12 };
int[] number2 = { 5, 10, 8, 3 ,10000};
//交集Intersect
IEnumerable<int> Intersect1 = number1.Intersect(number2);
ViewBag.Intersect1 = Intersect1;
//并集Union
IEnumerable<int> Union1 = number1.Union(number2);
ViewBag.Union1 = Union1;
//差集Except
IEnumerable<int> Except1 = number1.Except(number2);
ViewBag.Except1 = Except1;
//Concat
IEnumerable<int> Concat1 = number1.Concat(number2);
ViewBag.Concat1 = Concat1;
return View();
}
#endregion 差集Except、并集Union 和 Concat(TSource)
2)添加视图Index6.cshtml,代码如代码1.2
代码1.2
@{
<div style="background-color: Yellow;">
使用交集Intersect()将两个集合的相同的元素输出</div>
foreach (var m in ViewBag.Intersect1)
{
<div>@m</div>
}
<div style="background-color: Yellow;">
使用并集方法Union()将两个集合的不同元素连接(先无条件输出第一个集合的所有元素,然后在第二个集合里找第一个集合没有的元素)</div>
foreach (var m in ViewBag.Union1)
{
<div>@m</div>
}
<div style="background-color: Yellow;">
使用差集方法Except()查处在第一个集合而不再第二个集合的元素</div>
foreach (var m in ViewBag.Except1)
{
<div>@m</div>
}
<div style="background-color: Yellow;">
使用Concat()将两个集合的元素连接(不做任何处理,只是傻瓜式的连接起来)</div>
foreach (var m in ViewBag.Concat1)
{
<div>@m</div>
}
}