相信很多学java的人都对“&&”和“||”很熟悉。但是你知道这两个逻辑运算符和“&”“|”的异同点吗?今天就来给大家揭秘一下。
1.&&和&,首先看一个示例程序:
可以看到这两个逻辑逻辑运算符对同一个逻辑运算的结果是一样的,但是底层的运算过程是有些区别的。我们都知道“与”逻辑运算符的运算规律是:只有当运算符两边的逻辑表达式都为真的时候,结果才为真,即只要两边有一个为假,结果就为假。所以这二者的区别是:“&&”运算符当左边的逻辑运算为假的时候,右边的逻辑运算就不再进行运算了,直接得出最终结果:假。
结论:由于“&&”比“&”的运算效率在某些情况下高一些,所以默认使用“&&”符号。
2.||和|,首先看一个示例程序:
可以看到这两个逻辑逻辑运算符对同一个逻辑运算的结果是一样的,但是底层的运算过程是有些区别的。我们都知道“或”逻辑运算符的运算规律是:只有当运算符两边的逻辑表达式都为假的时候,结果才为假,即只要两边有一个为真,结果就为真。所以这二者的区别是:“||”运算符当左边的逻辑运算为真的时候,右边的逻辑运算就不再进行运算了,直接得出最终结果:真。
结论:由于“||”比“|”的运算效率在某些情况下高一些,所以默认使用“||”符号。
(ps:“&”和“|”符号不仅可以作为逻辑运算符还可以作为为运算符,详情请看我的另一篇博客:java位运算符)