首页 新闻 会员 周边 捐助

Linq里面的lambda表达式如果需要两个条件判断是并且的关系&&与&的区别?

0
悬赏园豆:20 [已解决问题] 解决于 2015-09-14 17:52

例如:

筛选年龄为18并且性别为男的孩子。筛选语句如下:

persons.Where(t=>t.Age==18&&t.Gender=="男")

 与

persons.Where(t=>t.Age==18&t.Gender=="男")

这两个执行的效果是一样的,但是&代表位运算,&&代表条件运算符。为什么呢?

落叶飞逝的恋的主页 落叶飞逝的恋 | 初学一级 | 园豆:118
提问于:2015-09-05 10:08
< >
分享
最佳答案
0

这的问设计语言的人,也许当时他设计的时候脑袋刚刚好被门夹过了。

收获园豆:4
爱编程的大叔 | 高人七级 |园豆:30844 | 2015-09-05 11:11
其他回答(4)
0

因为Convert.ToInt32(True) == 1

收获园豆:4
jello chen | 园豆:7336 (大侠五级) | 2015-09-05 11:27
0

你还是没明白&与&&的语法,你这样&是不会短路的,你去用||与|试试,就知道说明时候短路了,结果就不一样了

收获园豆:4
稳稳的河 | 园豆:4216 (老鸟四级) | 2015-09-05 14:00
0

true就是1,那么1&1还是1,1&&1还是1,所以你的写法两种都可以

收获园豆:4
喝前摇一摇 | 园豆:210 (菜鸟二级) | 2015-09-06 08:26
0

好深奥的问题。你先搞清楚学习下各个运算符的定义吧。

收获园豆:4
吴瑞祥 | 园豆:29449 (高人七级) | 2015-09-06 10:42

麻烦大神讲解下!

支持(0) 反对(0) 落叶飞逝的恋 | 园豆:118 (初学一级) | 2015-09-14 10:03

@落叶飞逝的恋: 知道位运算符和逻辑运算符的区别的,他们是完全不一样的2个东西.

你先去百度下这2个的定义

支持(0) 反对(0) 吴瑞祥 | 园豆:29449 (高人七级) | 2015-09-14 10:52
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册