关注.NET的程序员,对LinQ这个名词应该已经听说过了,上个星期和THIN见了一下面,他给我演示了一下LinQ,觉得很有意思,有些东西很像JavaScript。后来在他的博客里也看到他写的一编文章。自己也写了一个小Demo,现在拿出来和大家分享一下,这编都是比较简单的例子,因为我也是才自学那么几天时间,![](/CuteSoft_Client/CuteEditor/images/emteeth.gif)
Demo1:
从一个整型数组中找出偶数:
原始写法:
int[] numbers = { 12, 234, 15, 43254, 2, 1, 4, 5 };
![](/Images/OutliningIndicators/None.gif)
foreach (int i in numbers)
{
if (i % 2 == 0)
Console.WriteLine(i);
}
LinQ写法1:
var numbers_1 = from number in numbers where (number % 2 == 0) orderby number descending select number;//orderby number descending 这是对筛选出来的数值进行排序![](/Images/OutliningIndicators/None.gif)
foreach (var i in numbers_1)
{
Console.WriteLine(i);
}
LinQ写法2:
var numbers_1 = numbers.Where(i => i % 2 == 0).Select(i => i);//输出用写法1一样
LinQ中使用到了var 关键字,它和JavaScript很像,您给他赋予什么类型它就是什么类型,但不能不赋值。
这只是一个简单的小例子,并不能说明LinQ的好处,在将来的时间里,我会不断地把自己写的Demo拿出来和大家分享一下。
下一节:自动属性
![](/CuteSoft_Client/CuteEditor/images/emteeth.gif)
Demo1:
从一个整型数组中找出偶数:
原始写法:
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
LinQ写法1:
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![](/Images/OutliningIndicators/None.gif)
LinQ中使用到了var 关键字,它和JavaScript很像,您给他赋予什么类型它就是什么类型,但不能不赋值。
这只是一个简单的小例子,并不能说明LinQ的好处,在将来的时间里,我会不断地把自己写的Demo拿出来和大家分享一下。
下一节:自动属性