java运算符(2)

52 阅读1分钟

逻辑运算符:处理布尔值的逻辑关系

逻辑运算符仅作用于布尔类型(true/false),用于组合多个布尔表达式,结果仍是布尔值,是流程控制(如iffor)的核心。 代码如下

boolean b1 = true;
boolean b2 = false;
// 1. 非运算(!)
System.out.println(!b1); // false
System.out.println(!b2); // true

// 2. 异或运算(^)
System.out.println(b1 ^ b2); // true(不同为true)
System.out.println(b1 ^ b1); // false(相同为false)

// 3. 与运算:& vs &&
System.out.println(b1 & b2); // false(全true才true)
System.out.println(b1 && b2); // false(结果相同,但短路特性不同)

// 4. 短路特性关键示例
int num1 = 1;
int num2 = 1;
boolean b = num1 > 1 || num2++ > 1; 
System.out.println(b); // false(num1>1为false,num2++>1也为false)
System.out.println(num2); // 2?不!实际输出1!

总结

  • 赋值运算符:复合赋值(+=等)自动强转,多变量赋值需先声明。
  • 比较运算符:===,浮点型避免直接比较,char可与 int 比 Unicode 值。
  • 逻辑运算符:短路&&/||效率更高,注意后续表达式是否执行。