java中运算符使用步骤(超详细!)

 更新时间:2025年11月15日 10:27:43   作者:凯芸呢  
Java中的运算符是编程语言中最基本的组成部分,对于数据的操作和处理起着至关重要的作用,这篇文章主要介绍了java中运算符使用步骤的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

前言

运算符是什么呢?其实这个问题很简单,运算符在我们的生活中很常见,失去了它,我们的数学基本报废了,像“+ , - ,* , /”都是我们最基本的运算符。即:对操作数进行操作时使用的符号,不同操作符的含义各不相同。

java作为一门优秀的程序设计语言,同样也提供有一整套丰富的运算符来操作变量。Java中的运算符分为:算术运算符(±*/),逻辑运算符(&&,||等),位运算符(& 、|等),关系操作符(><等),移位操作符和条件操作符等。

一、运算符

1.什么是运算符

计算机的最基本的用途之一就是执行数字运算

在数字运算中的"+"和"-"等就是运算符

即:对操作数进行操作时的符号,不运算符操作的含义不同。

作为一门计算机语言,java也提供了一套丰富的运算符来操作变量。

java中将运算符分为以下部分:算数运算符,关系运算符,逻辑运算符,位运算符,移位运算符以及条件运算符等。

2.算数运算符

1.基本运算符:加减乘除取模(+-*/ % )

注意

  • 都是二元运算符,使用时必须要有左右两个操作数

int / int 结果还是int型,结果会向下取整,即小数点后的数舍去,取整数。

结果为:

 若想保留小数点的数字,可采用如下方法:

  • 做除法和取模时,右操作数不能为0,否则将会报错
  • %不仅可以对整型取模,也可以对double类型取模,但没有意义,一般都对整型取模。
  • 两侧操作数类型不一致时,向类型大的提升:

结果为:

在进行+的之前,int型的a被提升为double型输出

2.增量运算符 += -= *= %=

该种类型运算符操作完成后,会将操作的结果赋值给左操作数

结果为:

注意:增量运算符在计算时,可以不进行强制类型转换

3.自增/自减运算符 ++/--

如果单独使用,[前置++]和[后置++]没有任何区别

如果混合使用,[前置++]先+1,然后使用变量+1之后的值,[后置++]先使用变量原来的值,表达式结束时给变量+1

只有变量才能使用自增/自减运算符,常量不能使用,因为常量不允许被修改

3.关系运算符

关系运算符主要有六个:==  !=  > <  <=  >=,其计算结果是true或者false。

注意:

当需要多次判断时,不能连着写,比如2<a<4,java程序与数学中的区别

4.逻辑运算符(重点)

逻辑运算符主要有三个  &&  ||   ! ,运算结果都是boolean类型

语法规则:表达式1&&(||  !)表达式2,左右表达式必须是boolean类型的结果

4.1逻辑与&&

左右表示式中存在一个false的,则结果为false

示例:

结果为:

4.3 逻辑 或||

当左右表达式中存在一个true,则输出结果为true

示例:

结果为:

4.3逻辑非!

表达式true变为false,false变为true

4.4短路求值

逻辑与和逻辑或遵守短路求值的规则。

对于逻辑与&&,如果左侧表达式值false, 则表达式结果一定是false,无需计算右侧表达式

对于逻辑或||,如果左侧表示式值为true,则表示式结果一定是true,无需计算右侧表达式

&和| ,如果表达式结果为boolean类型,也表达逻辑算计,但与&&和||相比,它们不支持短路求值

5.位运算符

java中数据存储的最小单位是字节,而数据操作的最小单位是比特位。字节是最小的存储单位,每个字节是由8个二进制比特位组成的,多个字节组合在一起可以表示各种不同的数据。

位运算符主要有四个:&   |   ~   ^,除~是一元运算符外,其他都是二元运算符。

位操作表示按二进制计算.计算机中都是使用二进制来表示数据的(01构成的序列),按位运算就是在按照二进制的每一位依次进行计算。

1.按位与&:

如果两个二进制都是1,则结果为1,否则结果为0.

2.按位或|:

如果两个二进制位都是0,则结果位0,否则结果为1

注意:

当&和 | 的操作数为整数(int short long byte)的时候,表示按位计算机,当操作数为boolean类型的时候,表示逻辑计算。

3.按位取反~:

如果该位为0,则转为1,如果该位为1,则转为0

注意:

0x前缀的数字为十六进制数字,十六进制可以看成二进制的简化表达方式.一个十六进制数字对应4个二进制位。

0xf表示10进制的15,也就是二进制的1111

printf能够格式化输出内容,%x表示按照十六进制输出

\n表示换行符

4.按位异或^:

如果两个数字的二进制相同,则结果为0,相异则结果为1

如果两个数字相同,则异或的结果为

6.移位运算符(了解)

移位运算符有三个:>>   <<   >>>  ,都是二元运算符,且都是按照二进制比特位来运算的。

1.左移位 <<

在二进制中,最左侧位不要,最右侧补0.

例如:0101 0101   << 1  ——>  1010 1010

 2.右移 >>

最右侧位不要,最左侧补符号位(符号是1补1,否则补0)

例如:0101 0101 >>1 ——>   0010 1010

3.无符号右移  >>>

最右侧位不要了,最左侧补0

例如    1111 1111 >>>1  ——>  0111 1111         

7.条件运算符

条件运算符只有一个:

表达式1 ?  表达式2 表达式3

表达式1为boolean类的结果,

当结果为true时,整个表达式的结果值为表达式2 的值

当结果为false时,整个表达式的结果值为 表达式3的值

java中唯一的一个三目运算符,是条件判断语句的简化写法

结果为:

注意:

1.表达式2和表达3的结果要是同类型的,除非能发生隐式类型转换

2.表达式不能单独存在,其产生的结果必须要被使用

8.运算符的优先级

运算符之间是有优先级的,但具体的规则我们不必记忆。

在可能存在歧义的代码中加上括号即可

总结

到此这篇关于java中运算符使用步骤的文章就介绍到这了,更多相关java中运算符内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SimpleDateFormat格式化日期问题

    SimpleDateFormat格式化日期问题

    这篇文章主要介绍了SimpleDateFormat格式化日期问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • SpringMVC之@requestBody的作用及说明

    SpringMVC之@requestBody的作用及说明

    这篇文章主要介绍了SpringMVC之@requestBody的作用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • SpringCloud openfeign相互调用实现方法介绍

    SpringCloud openfeign相互调用实现方法介绍

    在springcloud中,openfeign是取代了feign作为负载均衡组件的,feign最早是netflix提供的,他是一个轻量级的支持RESTful的http服务调用框架,内置了ribbon,而ribbon可以提供负载均衡机制,因此feign可以作为一个负载均衡的远程服务调用框架使用
    2022-11-11
  • Java判断2个List集合是否相等(不考虑元素的顺序)

    Java判断2个List集合是否相等(不考虑元素的顺序)

    今天小编就为大家分享一篇关于Java判断2个List集合是否相等(不考虑元素的顺序)的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • Spring Boot 通过 Mvc 扩展方便进行货币单位转换的代码详解

    Spring Boot 通过 Mvc 扩展方便进行货币单位转换的代码详解

    这篇文章主要介绍了Spring Boot 通过 Mvc 扩展方便进行货币单位转换,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Java后台防止客户端重复请求、提交表单实现原理

    Java后台防止客户端重复请求、提交表单实现原理

    这篇文章主要介绍了Java后台防止客户端重复请求、提交表单实现原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • mybatis-plus如何修改日志只打印SQL语句不打印查询结果

    mybatis-plus如何修改日志只打印SQL语句不打印查询结果

    这篇文章主要介绍了mybatis-plus如何修改日志只打印SQL语句不打印查询结果问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • java测试框架的方法

    java测试框架的方法

    这篇文章主要介绍了java测试框架的方法,文中代码非常详细,供大家学习和参考,感兴趣的朋友可以了解下
    2020-06-06
  • Java面试题冲刺第二天--Redis篇

    Java面试题冲刺第二天--Redis篇

    这篇文章主要为大家分享了最有价值的三道java面试题,涵盖内容全面,包括数据结构和算法相关的题目、经典面试编程题等,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • 使用SpringBoot的CommandLineRunner遇到的坑及解决

    使用SpringBoot的CommandLineRunner遇到的坑及解决

    这篇文章主要介绍了使用SpringBoot的CommandLineRunner遇到的坑及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02

最新评论