java期末考试复习(二)
&,|与&&,||的区别
首先 &和| 称为布尔运算符,&&和|| 称为条件布尔运算符。
|和&是位运算,运算结果是二进制数。 &&,||是逻辑运算,运算结果是真,或者假。
两种运算符得到的结果完全相同,但得到结果的方式又一个重要区别:条件布尔运算符性能比较好。他检查第一个操作数的值,再根据该操作数的值进行操作,可能根本就不处理第二个操作数。
如果&&运算符的第一个操作数是false,就不需要考虑第二个操作数的值了,因为无论第二个操作数的值是什么,其结果都是false。同样,如果第一个操作数是true,||运算符就返回true,无需考虑第二个操作数的值。但&和|却不是这样,它们总是要计算两个操作数。
因为操作数的就算是有条件的,如果使用&&和||运算符来代替&和|,性能会有一定提高。在大量使用这些运算符的应用程序中这表现得尤为明显。作为一个原则,尽可能使用&&和||运算符。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 mopinlan!
评论