LINQ to OBJECT函数积累

1、Concat操作符

Concat操作符用于连接两个序列,生成一个新的序列。

string[] str1 = { "one", "two" };
string[] str2 = { "three", "four" };
var item = str1.Concat(str2);


2、Reverse操作符

Reverse操作符用于将排列顺序相反。


3、Union操作符

Union操作符用于将两个序列中的元素合并成一个新的序列,新的序列将自动去除重复元素。


4、Intersect操作符

Intersect操作符将两个输入序列中的重复元素,即同时存在于两个输入序列中的元素挑选出来,生成一个新的序列。


5、Except操作符

Except操作符可以实现一种序列之间的“减法操作”运算,它返回两个序列中存在于第一个序列,但不存在与第二个序列的元素所组成的新序列。


6、Cast操作符

cast操作符用于将一个类型为IEnumerable的集合对象转换成IEnumerable<T>类型的集合对象。

ArrayList al = new ArrayList();
IEnumerable<Student> list = al.Cast<Student>();

7、ofType操作符

ofType操作符与Cast操作符类似,但ofType操作符更加安全。Cast转换失败会抛出异常,而ofType操作符仅会将能成功转换的元素进行转换。


8、Range操作符

Range操作符用于生成一个整数序列。


9、Repeat操作符

Repeat操作符用于生成一个包含指定数量的重复元素序列。


10、Empty操作符

Empty操作符用于生成一个包含指定类型元素的空序列。


11、FirstOrDefault操作符

FirstOrDefault操作符与First操作符非常相似,只无值时会返回一个相关类型的默认值元素。


12、Last与LastOrDefault操作符


13、Any操作符

Any操作符用于判断一个输入序列中是否含有元素或含有满足特定条件的元素。

string[] str1 = { "one", "two" };
string[] str2 = {};

bool b1 = str1.Any();    //true
bool b2 = str2.Any();    //false
bool b3 = str1.Any(a => a.Length > 10);    //false

注意:如果序列为null,则异常。


14、All操作符

All操作符用于判断输入序列中的所有元素是否全部满足指定条件。

string[] str = { "one", "two" };
bool flay = str.All(a => a.Length > 5);    //false


15、Contains操作符

Contains操作符用于判断序列中是否含有指定元素。

string[] str = { "one" };
bool b = str.Contains("Hello");    //false


16、Count操作符与LongCountt操作符

LongCountt操作符与Countt操作符的基本相同。只是Count操作符以int类型返回。LongtCount操作符以Long类型返回。


17、Aggregate操作符

Aggregate操作符用于输入序列的所有元素上累计执行某个特定的方法。

int[] strArray = { 1, 2, 3, 4 };
double multiply = strArray.Aggregate((result, next) => result * next);    //相乘

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pan_junbiao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值