一文掌握:常见运算符详解与实战

作者:十万个为什么2024.04.07 16:37浏览量:5

简介:本文将深入解析逻辑运算符、位运算符、移位运算符、三目运算符等常见运算符的概念、用法及优先级,并通过实例帮助读者更好地理解和应用。

在编程中,运算符是执行基本运算(如加、减、乘、除等)和比较(如等于、不等于、大于、小于等)的符号。它们不仅简化了代码,还提高了代码的可读性和可维护性。本文将详细介绍逻辑运算符、位运算符、移位运算符、三目运算符等常见运算符的用法和优先级,并通过实例帮助读者更好地理解和应用。

一、逻辑运算符

逻辑运算符主要用于布尔值(true或false)的运算。常见的逻辑运算符包括:

  1. 与(&&):当且仅当两个操作数都为true时,结果才为true。
  1. boolean a = true;
  2. boolean b = false;
  3. boolean result = a && b; // result为false
  1. 或(||):当至少有一个操作数为true时,结果就为true。
  1. boolean a = true;
  2. boolean b = false;
  3. boolean result = a || b; // result为true
  1. 非(!):对操作数的布尔值取反。
  1. boolean a = true;
  2. boolean result = !a; // result为false

二、位运算符

位运算符直接对整数类型的操作数的二进制位进行操作。常见的位运算符包括:

  1. 按位与(&):对两个数的二进制位进行按位与操作。
  1. int a = 60; // 二进制表示:0011 1100
  2. int b = 13; // 二进制表示:0000 1101
  3. int result = a & b; // 二进制表示:0000 1100,即result为12
  1. 按位或(|):对两个数的二进制位进行按位或操作。
  1. int a = 60; // 二进制表示:0011 1100
  2. int b = 13; // 二进制表示:0000 1101
  3. int result = a | b; // 二进制表示:0011 1101,即result为61
  1. 按位异或(^):对两个数的二进制位进行按位异或操作。
  1. int a = 60; // 二进制表示:0011 1100
  2. int b = 13; // 二进制表示:0000 1101
  3. int result = a ^ b; // 二进制表示:0011 0001,即result为49
  1. 按位取反(~):对一个数的二进制位进行取反操作。
  1. int a = 60; // 二进制表示:0011 1100
  2. int result = ~a; // 二进制表示:1100 0011,即result为-61(在Java中,符号位也参与运算)

三、移位运算符

移位运算符用于将操作数的二进制位向左或向右移动指定位数。常见的移位运算符包括:

  1. 左移(<<):将操作数的二进制位向左移动指定位数,右侧用0填充。
  1. int a = 1; // 二进制表示:0000 0001
  2. int result = a << 2; // 二进制表示:0000 0100,即result为4
  1. 右移(>>):将操作数的二进制位向右移动指定位数,左侧用符号位填充(对于有符号整数)。
  1. int a = 60; // 二进制表示:0011 1100
  2. int result = a >> 2; // 二进制表示:0000 1111,即result为15
  1. 无符号右移(>>>):将操作数的二进制位向右移动指定位数,左侧总是用0填充(对于无符号整数或有符号整数的无符号右移)。

```java
int