c#中|| 和| 的用法

hahahahaha1234567890 2008-09-30 11:14:44
|| 和| 这2个都是或

请问在用法上有和区别啊?
...全文
193 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gump_BlueSky 2008-10-01
  • 打赏
  • 举报
回复
两个都可以作为逻辑或的运算符,区别在于:
使用||是如果第一个表达式的值为true,就不用判断第二个表达式的值,直接返回true,而|在任何情况下都必须把两个表达式的值都计算出来,才返回最终的结果。
zhangyu_xl 2008-09-30
  • 打赏
  • 举报
回复
||或有可能只比较一次,例如true||false值就是True而不需要比较第二个了,但是|就要全比较完,前者效率高点,后者还是位运算
周公 2008-09-30
  • 打赏
  • 举报
回复
二元 | 运算符是为整型和 bool 类型预定义的。对于整型,| 计算操作数的按位“或”结果。对于 bool 操作数,| 计算操作数的逻辑“或”结果;也就是说,当且仅当两个操作数均为 false 时,结果才为 false。
JeffChung 2008-09-30
  • 打赏
  • 举报
回复
一个是逻辑运算符||
一个是位运算符|
完全不通用


1|0 -- 1
0|0 -- 0
1001|0100 -- 1101
崔鹏飞 2008-09-30
  • 打赏
  • 举报
回复
第二个是按位的或操作(没说错吧?)
止戈而立 2008-09-30
  • 打赏
  • 举报
回复
||是两个bool类型的值运算
|是位运算
brallow 2008-09-30
  • 打赏
  • 举报
回复
来晚了,我也来听听课。
rockyvan 2008-09-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 fvflove 的回复:]
二元 | 运算符是为整型和 bool 类型预定义的。对于整型,| 计算操作数的按位“或”结果。对于 bool 操作数,| 计算操作数的逻辑“或”结果;也就是说,当且仅当两个操作数均为 false 时,结果才为 false。

条件“或”运算符 (||) 执行 bool 操作数的逻辑“或”运算,但仅在必要时才计算第二个操作数。


| 是二个操作数都进行计算.

|| 当第一个操作数为真的时候,就不计算第二个操作数.
[/Quote]
正解!
asp_np 2008-09-30
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 zhangyu_xl 的回复:]
||或有可能只比较一次,例如true||false值就是True而不需要比较第二个了,但是|就要全比较完,前者效率高点,后者还是位运算
[/Quote]

我懂了
fvflove 2008-09-30
  • 打赏
  • 举报
回复
二元 | 运算符是为整型和 bool 类型预定义的。对于整型,| 计算操作数的按位“或”结果。对于 bool 操作数,| 计算操作数的逻辑“或”结果;也就是说,当且仅当两个操作数均为 false 时,结果才为 false。

条件“或”运算符 (||) 执行 bool 操作数的逻辑“或”运算,但仅在必要时才计算第二个操作数。


| 是二个操作数都进行计算.

|| 当第一个操作数为真的时候,就不计算第二个操作数.
ZengHD 2008-09-30
  • 打赏
  • 举报
回复
二元 | 运算符是为整型和 bool 类型预定义的。对于整型,| 计算操作数的按位“或”结果。对于 bool 操作数,| 计算操作数的逻辑“或”结果;也就是说,当且仅当两个操作数均为 false 时,结果才为 false。
panzi667 2008-09-30
  • 打赏
  • 举报
回复
前面那个我知道,是用来做或计算的
sqq86 2008-09-30
  • 打赏
  • 举报
回复
来晚了 学习一下
NowtAngell 2008-09-30
  • 打赏
  • 举报
回复
UP 来晚了,擦
coooliang 2008-09-30
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 JeffChung 的回复:]
一个是逻辑运算符||
一个是位运算符|
完全不通用


1|0 -- 1
0|0 -- 0
1001|0100 -- 1101
[/Quote]
原来是这样 学习了
霜寒月冷 2008-09-30
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 JeffChung 的回复:]
一个是逻辑运算符||
一个是位运算符|
完全不通用


1|0 -- 1
0|0 -- 0
1001|0100 -- 1101
[/Quote]
这个更直观!
AbnerChou 2008-09-30
  • 打赏
  • 举报
回复
恩,楼上正解。
mykelly6 2008-09-30
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 JeffChung 的回复:]
一个是逻辑运算符||
一个是位运算符|
完全不通用


1|0 -- 1
0|0 -- 0
1001|0100 -- 1101
[/Quote]
这个说的很明白了~
himner 2008-09-30
  • 打赏
  • 举报
回复
这个问题也正是我想要问的,谢谢各位大哥。

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧