Java运算符

Java运算符用于执行各种运算,包括算术运算、比较运算、逻辑运算、位运算、赋值运算以及其他类型的操作。

  • 算术运算符

这些运算符用于执行基本的数学运算,如加法、减法、乘法、除法和取余等。

复制代码
public class ArithmeticOperators {
    public static void main(String[] args) {
        int a = 10;
        int b = 5;

        System.out.println("a + b = " + (a + b));   // 加法
        System.out.println("a - b = " + (a - b));   // 减法
        System.out.println("a * b = " + (a * b));   // 乘法
        System.out.println("a / b = " + (a / b));   // 除法
        System.out.println("a % b = " + (a % b));   // 取余
        System.out.println("a++ = " + (a++));       // 自增
        System.out.println("a-- = " + (a--));       // 自减
    }
}
  • 关系运算符

用于比较两个值之间的关系,返回布尔值(true 或 false)。

复制代码
public class ComparisonOperators {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;

        System.out.println("a == b: " + (a == b));  // 等于
        System.out.println("a != b: " + (a != b));  // 不等于
        System.out.println("a > b: " + (a > b));    // 大于
        System.out.println("a < b: " + (a < b));    // 小于
        System.out.println("a >= b: " + (a >= b));  // 大于等于
        System.out.println("a <= b: " + (a <= b));  // 小于等于
    }
}
  • 逻辑运算符

用于对布尔值进行逻辑运算,返回布尔值。

复制代码
public class LogicalOperators {
    public static void main(String[] args) {
        boolean a = true;
        boolean b = false;

        System.out.println("a && b: " + (a && b));  // 与
        System.out.println("a || b: " + (a || b));  // 或
        System.out.println("!a: " + (!a));          // 非
    }
}
  • 位运算符

位运算符用于对整数的二进制表示进行位级别的操作。

复制代码
public class BitwiseOperators {
    public static void main(String[] args) {
        int a = 60; /* 60 = 0011 1100 */
        int b = 13; /* 13 = 0000 1101 */

        System.out.println("a & b: " + (a & b));    // 与
        System.out.println("a | b: " + (a | b));    // 或
        System.out.println("a ^ b: " + (a ^ b));    // 异或
        System.out.println("~a: " + (~a));          // 取反
        System.out.println("a << 2: " + (a << 2));  // 左移
        System.out.println("a >> 2: " + (a >> 2));  // 右移
        System.out.println("a >>> 2: " + (a >>> 2)); // 无符号右移
    }
}
  • 赋值运算符

赋值运算符用于为变量赋值。

复制代码
public class BitwiseOperators {
    public static void main(String[] args) {
        int num1 = 5; // 二进制: 0101
        int num2 = 3; // 二进制: 0011

        // 按位与
        int bitwiseAnd = num1 & num2; 
        System.out.println("按位与: " + bitwiseAnd);

        // 按位或
        int bitwiseOr = num1 | num2; 
        System.out.println("按位或: " + bitwiseOr);

        // 按位异或
        int bitwiseXor = num1 ^ num2; 
        System.out.println("按位异或: " + bitwiseXor);

        // 按位取反
        int bitwiseNot = ~num1; 
        System.out.println("按位取反: " + bitwiseNot);

        // 左移
        int leftShift = num1 << 2; 
        System.out.println("左移: " + leftShift);

        // 右移
        int rightShift = num1 >> 1; 
        System.out.println("右移: " + rightShift);

        // 无符号右移
        int unsignedRightShift = num1 >>> 1; 
        System.out.println("无符号右移: " + unsignedRightShift);
    }
}
  • 条件运算符(三元运算符)

是 Java 中唯一的三目运算符,根据条件的真假返回不同的值。

复制代码
public class ConditionalOperator {
    public static void main(String[] args) {
        int score = 80;
        String result = (score >= 60) ? "及格" : "不及格";
        System.out.println("考试结果: " + result);
    }
}
  • 其他运算符

instanceof:用于检查对象是否是特定类的实例。

new:用于创建对象的实例。

cast:用于强制类型转换。

复制代码
class Animal {}
class Dog extends Animal {}

public class OtherOperators {
    public static void main(String[] args) {
        Dog myDog = new Dog();

        System.out.println(myDog instanceof Dog);    // true
        System.out.println(myDog instanceof Animal); // true

        Animal myAnimal = (Animal) myDog; // 强制类型转换
    }
}
相关推荐
AlunYegeer19 分钟前
MyBatis 传参核心:#{ } 与 ${ } 区别详解(避坑+面试重点)
java·mybatis
少许极端31 分钟前
算法奇妙屋(四十)-贪心算法学习之路7
java·学习·算法·贪心算法
危笑ioi32 分钟前
helm部署skywalking链路追踪 java
java·开发语言·skywalking
夕除40 分钟前
Mysql--15
java·数据库·mysql
smileNicky1 小时前
Linux 系列从多节点的catalina 日志中统计设备调用频次
java·linux·服务器
赵丙双1 小时前
spring boot 排除自动配置类的方式和原理
java·spring boot·自动配置
8Qi81 小时前
LeetCode热题100--45.跳跃游戏 II
java·算法·leetcode·贪心算法·编程
bilI LESS1 小时前
Spring Boot接收参数的19种方式
java·spring boot·后端
Chan162 小时前
MCP 开发实战:Git 信息查询 MCP 服务开发
java·开发语言·spring boot·git·spring·java-ee·intellij-idea
九皇叔叔2 小时前
004-SpringSecurity-Demo 拆分环境
java·springboot3·springsecurity