逻辑运算符的探究
注意事项:
首先注意一点:就是逻辑,逻辑自然操作对象要符合boolean(布尔型)的,而不是C语言中的所谓的”非0“为真,”0“为假的,不然会出错(操作数类型错误)
实践代码:
public class Study5 {
public static void main (String[] args) {
/*String[] args 运行时的命令行参数 */
/*探究 逻辑运算符 & 与 && 的不同之处*/
int num = 8;
System.out.println((5>7) && (++num));
System.out.println("num ="+num);
System.out.println((5>7) & (++num));
System.out.println("num ="+num);
}
}
结果:
注意事项说完上正题:
比较 &&(短路与操作) 与 &(逻辑与操作)的不同
- && (短路与操作)只有所有的表达式为真(true)才为真(true),只要左表达式为假(false)了,就会出现短路:右表达式就不会执行了;
- && (逻辑与操作)同理只有所有的表达式为真(true)才为真(true),但是与&&(短路与操作)不同的是,无论左表达式是否为假 (false),其中的右表达式都会执行;
代码:
public class Study5 {
public static void main (String[] args) {
/*String[] args 运行时的命令行参数 */
/*探究 逻辑运算符 & 与 && 的不同之处*/
int num = 8;
System.out.println((5>7) && (++num > 9));
System.out.println("num ="+num);
System.out.println((5>7) & (++num > 9));
System.out.println("num ="+num);
}
}
结果:
比较 ||(短路或操作)与 |(逻辑或操作)的不同
- ||(短路或操作)只要有一个的表达式为真(true)就为真(true),只要左表达式为真(true)了,就会出现短路:右表达式就不会执行了;
- | (逻辑或操作)同理只要有一个的表达式为真(true)就为真(true),但是与||(短路或操作)不同的是,无论左表达式是否为真 (true),其中的右表达式都会执行;
代码:
public class Study5 {
public static void main(String[] args) {
/*探究逻辑运算符 || 与 | 的不同之处 */
int num = 8;
System.out.println((8>6) || (++num > 9));
System.out.println("num ="+num);
System.out.println((8>6) | (++num > 9));
System.out.println("num ="+num);
}
}
结果:
最后:
限于自己的水平的原因:其中的错误,不足,希望大家多多给予指教:韩信点兵——多多益善,谢谢大家!