首页 > 编程语言 >【Java】运算符

【Java】运算符

时间:2024-05-29 11:30:20浏览次数:14  
标签:false 运算 int 运算符 Java true 表达式

1、简介

  • 在Java中,运算符是用于执行特定操作的符号。它们可以用于各种数据类型,并执行如算术运算、比较、逻辑运算、位运算以及赋值等操作。

2、算术运算符

2.1内容

  • 算术运算符用于执行常见的数学运算。
  • +:加法
  • -:减法
  • *:乘法
  • /:除法
  • %:取余(模运算)
  • ++:自增(前置和后置)
  • --:自减(前置和后置)
     

2.2举例

int a = 5, b = 3;  
int sum = a + b; // sum 现在是 8  
int product = a * b; // product 现在是 15  
int remainder = a % b; // remainder 现在是 2

3、关系运算符

3.1内容

  • 关系运算符用于比较两个值之间的关系。
  • ==:等于
  • !=:不等于
  • >:大于
  • <:小于
  • >=:大于或等于
  • <=:小于或等于
  • 这些运算符返回的结果是一个布尔值(true 或 false)。

3.2举例

int a = 5, b = 3;  
boolean isEqual = a == b; // isEqual 现在是 false  
boolean isGreater = a > b; // isGreater 现在是 true

4、逻辑运算符

4.1内容

  • 逻辑运算符用于组合布尔值。
  • &&:逻辑与(AND)
  • ||:逻辑或(OR)
  • !:逻辑非(NOT)
  • 这些运算符用于控制程序的流程,特别是在if、while等语句中。

4.2详细比较

  • 逻辑与运算 A & B :使用&进行运算,要求符号左右两边都有表达式,并且必须是boolean类型的表达 式,如果A和B表达式都是true,则结果是true,否则是false
  • 逻辑或运算 A | B:使用|进行运算,要求符号左右两边都有表达式,并且必须是boolean类型的表达 式,如果A和B表达式其中有一个是true,则结果是true,否则是false
  • 逻辑非运算 !A:使用!进行运算,只有右侧有表达式,并且必须是boolean类型的表达式,如果A为true, 则结果为false,如果A是false,则结果是true
  • 逻辑异或运算 A^B: 使用^进行运算,只要两边相同,返回false,两边不同,返回true
  • 短路与运算 A&&B: 和上面与运算的规则相同,如果左侧表达式为false,则右侧不运算,直接返回结 果为false,如果左侧表达式为true,则右侧再运算
  • 短路或运算 A||B : 和上面或运算的规则相同,如果左侧表达式为true,则右侧不运算,直接返回结果 为true,如果左侧表达式为false,则右侧再运算
  • 如果要求右侧表达式,不管在什么情况下,都要计算到,只能使用逻辑与和逻辑或运算,不能使用短路与和短路或运算
A B A&B A|B A^B !A
true true true true false false
true false false true true false
false true false true true true
false false false false false true

5、位运算符

5.1内容

  • 位运算符直接对整数类型(byte、short、int、long)的二进制位进行操作。
  • &:按位与(Bitwise AND)
  • |:按位或(Bitwise OR)
  • ^:按位异或(Bitwise XOR)
  • ~:按位非(Bitwise NOT)
  • <<:左移(Left Shift)
  • >>:右移(Right Shift,带符号)
  • >>>:无符号右移(Unsigned Right Shift)
  • 这些运算符在处理底层系统编程或需要优化性能的代码中很有用。

5.2举例

int a = 60; /* 60 = 0011 1100 */  
int b = 13; /* 13 = 0000 1101 */  
int c = a & b; /* 12 = 0000 1100 */  
int d = a | b; /* 61 = 0011 1101 */  
int e = a ^ b; /* 49 = 0011 0001 */  
int f = ~a;  /* -61 = 1100 0011 */  
int g = a << 2; /* 240 = 1111 0000 */  
int h = a >> 2; /* 15 = 0000 1111 */  
int i = a >>> 2; /* 15 = 0000 1111 (无符号右移) */

6、赋值运算符

6.1内容

  • 赋值运算符用于给变量赋值。
  • =:简单赋值
  • +=、-=、*=、/=、%=:复合赋值(先进行算术运算,然后赋值)

6.2举例

int a = 5;  
a += 3; // a 现在是 8,等同于 a = a + 3;  
a *= 2; // a 现在是 16,等同于 a = a * 2;

标签:false,运算,int,运算符,Java,true,表达式
From: https://blog.csdn.net/wosixiaokeai/article/details/139241182

相关文章

  • Java中的G1GC是如何工作的.18219565
    原文:HowG1GarbageCollectorworkinJava作者:PerspectiveMentorG1垃圾收集器采用了一个全新的垃圾收集方式,这让它在Java中的其它GC算法中鹤立鸡群。介绍G1(Garbage-First)是作为Parallel和CMS的替代者被引入到Java中的。它的设计目标是提供更加可预测的程序暂停时间,同时......
  • java的instanceOf问题
    在使用springboot+springsecurity开发项目时,使用了instanceOf判断是否属于某一个类,从而进行强转。但是今天在一个新的项目中加入security进行获取用户信息的时候发现一个问题。通过security的Authentication获取到的principal不属于同一个UserDetail 通过object.getClass......
  • 【Java】 如何在JUnit测试中断言抛出特定异常?
    >>【痕迹】QQ+微信朋友圈和聊天记录分析工具>>(1)纯Python语言实现,使用Flask后端,本地分析,不上传个人数据。>>(2)内含QQ、微信聊天记录保存到本地的方法,真正实现自己数据自己管理。>>(3)数据可视化分析QQ、微信聊天记录,提取某一天的聊天记录与大模型对话。>>**下载......
  • 【Java】 解决Java SSL握手异常:PKIX路径构建失败错误
    >>【痕迹】QQ+微信朋友圈和聊天记录分析工具>>(1)纯Python语言实现,使用Flask后端,本地分析,不上传个人数据。>>(2)内含QQ、微信聊天记录保存到本地的方法,真正实现自己数据自己管理。>>(3)数据可视化分析QQ、微信聊天记录,提取某一天的聊天记录与大模型对话。>>**下载......
  • 【Java】 如何解决Java中的UnsupportedClassVersionError错误
    >>【痕迹】QQ+微信朋友圈和聊天记录分析工具>>(1)纯Python语言实现,使用Flask后端,本地分析,不上传个人数据。>>(2)内含QQ、微信聊天记录保存到本地的方法,真正实现自己数据自己管理。>>(3)数据可视化分析QQ、微信聊天记录,提取某一天的聊天记录与大模型对话。>>**下载......
  • 《JAVA基础》stream流操作--从0开始上操作!!
    小蒋:        在java开发的不同场景下,会出现很多种可能性。所以掌握多种编程的方法可以让开发更多可能。Java中的Stream流操作是Java8及更高版本中引入的一种高级数据处理机制,它提供了一种声明式的编程模型,用于处理集合、数组或其他数据源中的数据序列。StreamAPI使......
  • 【JAVA】Java如何使用MyBatis-Plus
    文章目录前言一、函数解释二、代码实现三、总结前言在Java开发中,我们常常需要使用ORM框架来简化数据库操作。MyBatis是一个流行的ORM框架,而MyBatis-Plus是它的一个增强版,提供了更多的便利功能。在这篇博客中,我们将探讨如何在Java中使用MyBatis-Plus。一、函数解释......
  • java: 错误: 不支持发行版本 5的解决方案
    file->setting修改以下信息 修改pom.xml,添加以下代码<properties>    <maven.compiler.source>17</maven.compiler.source>    <maven.compiler.target>17</maven.compiler.target>  </properties>......
  • IDEA 创建 JavaFX 工程
    JavaFX下载安装1.检查本机JDK版本CMD命令行窗口输入java--version查询JDK版本,如下:C:\Users\Administrator>java--versionjava17.0.92023-10-17LTSJava(TM)SERuntimeEnvironment(build17.0.9+11-LTS-201)JavaHotSpot(TM)64-BitServerVM(build17.0.9+......
  • JavaScript中的let关键字详解
    在JavaScript中,let关键字用于声明局部变量,它与传统的var关键字类似,但引入了几个关键的区别和改进,主要体现在作用域规则、重复声明限制以及引入了“暂时性死区”等概念。下面将详细介绍let的特点及其与var的不同之处。块级作用域vs函数作用域var声明的变量:其作用域是函数......