例如:
筛选年龄为18并且性别为男的孩子。筛选语句如下:
persons.Where(t=>t.Age==18&&t.Gender=="男")
与
persons.Where(t=>t.Age==18&t.Gender=="男")
这两个执行的效果是一样的,但是&代表位运算,&&代表条件运算符。为什么呢?
这的问设计语言的人,也许当时他设计的时候脑袋刚刚好被门夹过了。
因为Convert.ToInt32(True) == 1
你还是没明白&与&&的语法,你这样&是不会短路的,你去用||与|试试,就知道说明时候短路了,结果就不一样了
true就是1,那么1&1还是1,1&&1还是1,所以你的写法两种都可以
好深奥的问题。你先搞清楚学习下各个运算符的定义吧。
麻烦大神讲解下!
@落叶飞逝的恋: 知道位运算符和逻辑运算符的区别的,他们是完全不一样的2个东西.
你先去百度下这2个的定义