linq学习笔记(一)
来源:互联网 发布:跆拳道软件 编辑:程序博客网 时间:2024/06/11 23:51
本例演示了如何从一个int数组中找出偶数,并将结果从大小到排序
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace LinqDemo
{
class Program
{
static int[] numbers = { 1, 3, 4, 5, 6, 7, 8, 9, 10, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11 };
static void Main(string[] args)
{
Traditonal();
Console.WriteLine("----------------------");
LinqMethod();
Console.ReadLine();
}
/**//// <summary>
/// 传统写法
/// </summary>
static void Traditonal()
{
List<int> SelectedNumbers = new List<int>();
foreach (int i in numbers)
{
if (i % 2==0)
{
SelectedNumbers.Add(i);
}
}
SelectedNumbers.Sort(SortDesc); //.net1.0写法
for (int i = 0; i < SelectedNumbers.Count; i++)
{
Console.WriteLine(SelectedNumbers[i]);
}
}
/**//// <summary>
/// 逆顺排序(配合传统写法)
/// </summary>
/// <param name="x"></param>
/// <param name="y"></param>
/// <returns>1(x大于y),0(x等于y),-1(x小于y)</returns>
static int SortDesc(int x,int y)
{
//if (x < y)
//{
// return 1;
//}
//else if (x == y)
//{
// return 0;
//}
//else
//{
// return -1;
//}//也可以简写为下面的一行
return y - x;
}
/**//// <summary>
/// Linq的写法
/// </summary>
static void LinqMethod()
{
var SelectedNumbers = from number in numbers where (number % 2 == 0) orderby number descending select number;
foreach (var i in SelectedNumbers)
{
Console.WriteLine(i);
}
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace LinqDemo
{
class Program
{
static int[] numbers = { 1, 3, 4, 5, 6, 7, 8, 9, 10, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11 };
static void Main(string[] args)
{
Traditonal();
Console.WriteLine("----------------------");
LinqMethod();
Console.ReadLine();
}
/**//// <summary>
/// 传统写法
/// </summary>
static void Traditonal()
{
List<int> SelectedNumbers = new List<int>();
foreach (int i in numbers)
{
if (i % 2==0)
{
SelectedNumbers.Add(i);
}
}
SelectedNumbers.Sort(SortDesc); //.net1.0写法
for (int i = 0; i < SelectedNumbers.Count; i++)
{
Console.WriteLine(SelectedNumbers[i]);
}
}
/**//// <summary>
/// 逆顺排序(配合传统写法)
/// </summary>
/// <param name="x"></param>
/// <param name="y"></param>
/// <returns>1(x大于y),0(x等于y),-1(x小于y)</returns>
static int SortDesc(int x,int y)
{
//if (x < y)
//{
// return 1;
//}
//else if (x == y)
//{
// return 0;
//}
//else
//{
// return -1;
//}//也可以简写为下面的一行
return y - x;
}
/**//// <summary>
/// Linq的写法
/// </summary>
static void LinqMethod()
{
var SelectedNumbers = from number in numbers where (number % 2 == 0) orderby number descending select number;
foreach (var i in SelectedNumbers)
{
Console.WriteLine(i);
}
}
}
}
可以看出用Linq写法,代码更简洁
- linq学习笔记(一)
- linq学习笔记(一)
- Linq学习笔记(一) -- 初识Linq
- LinQ学习笔记(一)
- LINQ学习笔记(一)—感受篇
- LINQ学习笔记(一)—感受篇
- Linq to DataSet 学习笔记一
- Linq学习一
- Linq 学习(一)
- LinQ的学习(一)
- LINQ学习(一)
- 学习笔记(一)-Linq To Sql&PhotoShop第二章
- 学习 linq to ADO.NET 实例笔记(一)
- LINQ to SQL学习笔记(一)——Where
- C#学习笔记(一):泛型、lambda表达式和linq
- LINQ 之查询基础学习笔记(一)
- linq学习笔记(二)
- Linq学习笔记(三)
- AppendDataBoundItems属性小用
- 网站首页页面缩略图制作
- ASP.NET2.0打通文件图片处理
- 在Windows server 2003 平台下搭建snort入侵检测系统
- Hide Title Bar in C Windows Programming
- linq学习笔记(一)
- spring mvc 控制器
- 解决 vs2005编译错误提示 "how to make cross-thread calls"超简单实例
- C#中"is" vs "as"
- Google Adsense 技巧提示100条
- sql2005用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联 解决办法
- 交叉编译VOIP需要的OSIP ExOSIP JRTP
- gcc参数详解
- .Net3.0中的自动属性(示例)