JAVA 运算符归纳总结

JAVA 运算符归纳总结

一、算术运算符

运算符 说明 示例
+ 加法/字符串连接 1 + 1 = 2,"a" + "b"
- 减法 2 - 1 = 1
* 乘法 3 * 2 = 6
/ 除法 5 / 2 = 2
% 取模(余数) 5 % 2 = 1
++ 自增 i++,++i
-- 自减 i--,--i
  • 示例说明:
// 加法/字符串连接
int a = 1, b = 2;
String str1 = "Hello", str2 = "Java";
System.out.println(a + b); // 输出结果为 3
System.out.println(str1 + str2); // 输出结果为 "HelloJava"

// 取模(余数)
int c = 5, d =2;
System.out.println(c % d); // 输出结果为 1

// 自增/自减
int i = 1;
System.out.println(i++); // 输出结果为 1,i 的值变为2
System.out.println(++i); // 输出结果为 3,i 的值为3

二、关系运算符

运算符 说明 示例
== 判断两个值是否相等 1 == 1 结果为 true
!= 判断两个值是否不相等 1 != 2 结果为 true
> 大于 3 > 2 结果为 true
< 小于 2 < 3 结果为 true
>= 大于等于 3 >= 3 结果为 true,2 >= 3 结果为false
<= 小于等于 3 <= 3 结果为 true,3 <= 2 结果为false
  • 示例说明:
int a = 1, b = 2, c = 3;
System.out.println(a == b); // 输出结果为 false
System.out.println(b != c); // 输出结果为 true
System.out.println(c > b); // 输出结果为 true
System.out.println(b < c); // 输出结果为 true
System.out.println(c >= a); // 输出结果为 true
System.out.println(a <= b); // 输出结果为 true

三、逻辑运算符

运算符 说明 示例
&& 逻辑与,当且仅当两个表达式都为 true 时才为 true true && false 结果为false
|| 逻辑或,当两个表达式有一个为 true 时就为 true true || false 结果为 true
! 逻辑非,取反 !true 结果为 false
  • 示例说明:
boolean a = true, b = false;
System.out.println(a && b); // 输出结果为 false
System.out.println(a || b); // 输出结果为 true
System.out.println(!a); // 输出结果为 false

四、赋值运算符

运算符 说明 示例
= 等于(赋值) a = 1
+= 加等于 a += 1 等价于 a = a + 1
-= 减等于 a -= 1 等价于 a = a - 1
*= 乘等于 a *= 2 等价于 a = a * 2
/= 除等于 a /= 2 等价于 a = a / 2
%= 模等于 a %= 2 等价于 a = a % 2
  • 示例说明:
int a = 1, b = 2;
a += b; // 相当于 a = a + b,a 的值变为 3
a *= b; // 相当于 a = a * b,a 的值变为 6

五、位运算符

位运算符操作的是二进制数,因此需要将十进制数转换成二进制数进行操作。

运算符 说明 示例
& 按位与,两个二进制数相应位上的数字都为 1 才为 1 3 & 5 = 1
| 按位或,两个二进制数相应位上的数字有一个为 1 就为 1 3 | 5 = 7
^ 按位异或,两个二进制数相应位上数字不相同才为 1 3 ^ 5 = 6
~ 按位取反,0 变为 1,1 变为 0 ~3 = -4
<< 左移,将二进制数向左移若干位(高位丢弃,低位补 0) 3 << 1 = 6
>> 右移,将二进制数向右移若干位(低位丢弃,高位补符号位) -3 >> 1 = -2
>>> 无符号右移,将二进制数向右移若干位,高位补 0 -3 >>> 1 = 2147483646
  • 示例说明:
int a = 3, b = 5;
System.out.println(a & b); // 输出结果为 1,3 的二进制数为 0011,5 的二进制数为 0101,相应位上数字都为 1 的只有第二位,即十进制数 1
System.out.println(a | b); // 输出结果为 7,3 的二进制数为 0011,5 的二进制数为 0101,相应位上数字为 1 的有第二位和第三位,即十进制数 6+1=7
System.out.println(a ^ b); // 输出结果为 6,3 的二进制数为 0011,5 的二进制数为 0101,相应位上数字不同的只有第一位和第四位,即十进制数 8+2=10,去掉高位为 1 的十进制数 8,得到十进制数 2,即二进制数 0010
System.out.println(~a); // 输出结果为 -4,将 3 的二进制数按位取反得到 1100,转换成十进制数即为 -4
System.out.println(a << 1); // 输出结果为 6,将 3 的二进制数向左移一位得到 0110,即十进制数 6
System.out.println(b >> 1); // 输出结果为 2,将 5 的二进制数向右移一位得到 0010,即十进制数 2
System.out.println(-3 >>> 1); // 输出结果为 2147483646,将 -3 的二进制数向右移一位并补 0 得到 01111111111111111111111111111110,转换成十进制数即为 2147483646

六、其他运算符

1. 条件运算符(三元运算符)

它也称为三元运算符,因为它需要三个操纵数。

运算符 说明 示例
?: 条件运算符 表达式1?表达式2:表达式3
  • 示例说明:
int a = 1, b = 2;
int max = a > b ? a : b; // 判断 a 是否大于 b,如果成立则 max 赋值为 a,如果不成立则 max 赋值为 b
System.out.println(max); // 输出结果为 2

2. instanceof 运算符

instanceof 运算符用于判断一个对象是否是一个类的实例。

  • 示例说明:
class Animal {
}

class Dog extends Animal {
}

class Cat extends Animal {
}

public class Test {
    public static void main(String[] args) {
        Animal animal1 = new Animal();
        Animal animal2 = new Dog();
        Animal animal3 = new Cat();
        boolean b1 = animal1 instanceof Animal;
        boolean b2 = animal2 instanceof Animal;
        boolean b3 = animal3 instanceof Animal;
        System.out.println(b1); // 输出结果为 true
        System.out.println(b2); // 输出结果为 true
        System.out.println(b3); // 输出结果为 true
    }
}

总结

本文介绍了 Java 中常见的运算符,包括算术运算符、关系运算符、逻辑运算符、赋值运算符、位运算符、条件运算符、instanceof 运算符等。注意 Java 中运算符的优先级和运算的结果类型,合理运用运算符可以让代码更加简洁和高效。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JAVA 运算符归纳总结 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • Java 重载、重写、构造函数的实例详解

    Java是一门支持面向对象的编程语言,重载、重写、构造函数是Java面向对象编程中的重要概念。本文将为你详细讲解Java的重载、重写、构造函数的实例详解。 Java 重载 函数重载是指函数名称相同,但参数列表不同的一组函数。Java允许使用重载的方法、构造函数和操作符。以下是Java重载函数的实例: public class OverloadDemo { p…

    Java 2023年5月26日
    00
  • java 如何实现日志追踪MDC

    Java实现日志追踪MDC攻略 1. 什么是MDC? MDC全称为Mapped Diagnostic Context,即映射的诊断上下文。MDC提供了一种在并发系统中记录日志信息的方式,它在不同线程中存储不同的值,保证线程安全的同时,能够让日志信息具有可追溯性。 2. 实现MDC日志追踪的步骤 以下是实现MDC日志追踪的步骤: 2.1 初始化MDC 一般情况…

    Java 2023年5月26日
    00
  • Spring Boot 日志配置方法(超详细)

    Spring Boot日志配置方法(超详细) Spring Boot是一个非常流行的Java开发框架,它提供了多种日志框架,包括Logback、Log4j2、Java Util Logging等。本文将详细介绍Spring Boot日志配置方法,包括配置文件、注解、代码等。 1. 配置文件 Spring Boot的日志配置文件是application.pro…

    Java 2023年5月14日
    00
  • Maven插件的安装及使用

    当我们需要在项目中使用某个特定的功能,但是该功能并未包含在Maven的核心库中时,我们需要使用Maven插件。Maven插件的安装及使用非常简单,下面将提供完整攻略。 步骤一:pom.xml中引入插件 在pom.xml文件中引入需要的插件。例如,如果我们需要使用Maven的clean插件,则可以在pom.xml文件中添加如下代码: <build>…

    Java 2023年5月20日
    00
  • Spring-Security对HTTP相应头的安全支持方式

    Spring Security 提供了许多机制来增强 Web 应用程序的安全性。其中一个是它支持将标准 HTTP 相应头设置为提高 Web 应用程序的安全性。这包括常见的头,如 X-Content-Type-Options、X-XSS-Protection、X-Frame-Options、Strict-Transport-Security 等。在本文中,我们…

    Java 2023年5月20日
    00
  • 如何使用MyBatis框架实现增删改查(CRUD)操作

    使用MyBatis框架实现增删改查(CRUD)操作是非常简单的,在下面的攻略中,我将展示如何使用MyBatis框架来完成这些操作。 准备工作 在开始使用MyBatis框架之前,你需要完成以下准备工作: 确定数据库连接信息,包括数据库名称、用户名和密码等。 安装MyBatis框架和相关依赖。 创建数据库表 首先我们需要创建一张用于存储数据的表,例如创建一个名为…

    Java 2023年5月20日
    00
  • Windows下java、javaw、javaws以及jvm.dll等进程的区别

    介绍:在Windows操作系统中,java、javaw、javaws等进程都是跑Java程序或应用的进程,它们在功能上有所差异。本文将详细讲解它们的区别。 javaw javaw.exe是Java虚拟机的一个非常重要的进程,并且是后台进程,即不会在显示屏上出现一个命令行窗口。它适用于那些需要长时间运行在后台的Java应用程序。大多数GUI应用程序都是使用ja…

    Java 2023年5月23日
    00
  • 用Java编写经典小程序

    让我来详细讲解一下“用Java编写经典小程序”的完整攻略。 1. 编写开发环境 首先,我们需要搭建好Java开发环境。这包括安装 JDK、配置环境变量以及选择一款IDE等步骤。一般来说,我们可以选择Eclipse、IntelliJ IDEA等Java开发工具来进行开发。 2. 设计程序结构与需求分析 在编写Java小程序之前,我们需要先进行需求分析,明确所需…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部