下文是笔者讲述java中逻辑运算符的简介说明,如下所示:
java中的逻辑运算符包含以下6种: &&与:&& 与 前后两个操作数必须都是true才返回true,否则返回false & 不短路与:& 不短路与 表达式都会执行到 ||或: || 或 只要两个操作数中有一个是true,就返回true,否则返回false |不短路或:| 不短路 或 表达式都会执行到 !非:! 非 ,如果操作数为true,返回false,否则,返回true ^异或:^ 异或 ,当两个操作数不相同时返回true,返回false
真值表
A | B | A&&B | A||B | !A | A^B | A&B | A|B |
false | false | false | false | true | false | false | false |
true | false | false | true | false | true | false | true |
false | true | false | true | true | true | false | true |
true | true | true | true | false | false | true | true |
逻辑运算符注意事项: 1.两种逻辑与(&&和&)的运算规则基本相同,两种逻辑或(||和|)的运算规则也基本相同 2.两者最大的区别在于: &和|运算是把逻辑表达式全部计算完,而&&和||运算具有短路计算功能 例: 对于&&计算,当左侧的表达式为false时,则计算会立即终止,返回false 同理对于||计算,其原理也相同例:
//88>99 为false,后面条件就不执行判断,当88<99为true,后面条件继续执行判断,抛出异常java.lang.ArithmeticException: / by zero if((88>99)&&(100/0==0)){ } //条件必须都执行判断,抛出异常java.lang.ArithmeticException: / by zero if((88>99)&(100/0==0)){ } // ||短路或,当第一个条件为true,后面条件不执行判断 if((88<99)||(100/0==0)){ } // | 非短路或,所有条件都要执行判断 if((88>99)|(100/0==0)){ }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。