java-运算基础

算术运算符

一元运算符

算术一元运算一共有 3 个,分别是 -、++ 和 --

-:取反运算,如b=-a

++:自加1,如a++,先取值在加1,++a先加1在取值

--:自减1,如a--先取值在减1,--a先减1在取值

二元运算符

Java 语言中算术运算符的功能是进行算术运算,除了经常使用的加(+)、减(-)、乘(*)和除(\)外,还有取模运算(%)。加(+)、减(-)、乘(*)、除(\)和我们平常接触的数学运算具有相同的含义

算术赋值运算符

+=:a+=b,a=a+b

-=:a-=b,a=a-b

*=:a*b,a=a*b

/=:a/=b,a=a/b

%=:a%=b,a=a%b

逻辑运算符

&&:如a&&b,ab 全为 true 时,计算结果为 true,否则为 false

||:如a||b,ab 全为 false 时,计算结果为 false,否则为 true

!:如!a,a 为 true 时,值为 false,a 为 false 时,值为 true

|:如a|b,ab 全为 false 时,计算结果为 false,否则为 true

&:如a&b,ab 全为 false 时,计算结果为 false,否则为 true

  • && 与 & 区别:如果 a 为 false,则不计算 b(因为不论 b 为何值,结果都为 false)
  • || 与 | 区别:如果 a 为 true,则不计算 b(因为不论 b 为何值,结果都为 true)

关系运算符

>:只支持左右两边操作数是数值类型。如果前面变量的值大于后面变量的值, 则返回 true

>=:只支持左右两边操作数是数值类型。如果前面变量的值大于等于后面变量的值, 则返回 true

<:只支持左右两边操作数是数值类型。如果前面变量的值小于后面变量的值,则返回 true

==:如果进行比较的两个操作数都是数值类型,无论它们的数据类型是否相同,只要它们的值不相等,也都将返回 true
如果两个操作数都是引用类型,只有当两个引用变量的类型具有父子关系时才可以比较,只要两个引用指向的不是同一个对象就会返回 true
java也支持两个 boolean 类型的值进行比较

!=:如果进行比较的两个操作数都是数值类型,无论它们的数据类型是否相同,只要它们的值不相等,也都将返回 true。
如果两个操作数都是引用类型,只有当两个引用变量的类型具有父子关系时才可以比较,只要两个引用指向的不是同一个对象就会返回 true

位运算符

直接对整数类型的位进行操作,这些整数类型包括 long,int,short,char 和 byte

位运算符主要用来对操作数二进制的位进行运算。按位运算表示按每个二进制位(bit)进行计算,其操作数和运算结果都是整型值

位逻辑运算符

位逻辑运算符包含 4 个:&(与)、|(或)、~(非)和 ^(异或)。除了 ~(即位取反)为单目运算符外,其余都为双目运算符

  • &:按位进行与运算(AND),如4&5,结果为4
  • |:按位进行或运算(OR),如4|5,结果为5
  • ^:按位进行异或运算(XOR),如4^5,结果为1
  • ~:按位进行取反运算(NOT),如~ 4,结果为-5

条件运算符

经常用于取代某个类型的 if-then-else 语句。条件运算符的符号表示为“?:”,使用该运算符时需要有三个操作数,因此称其为三目运算符。使用条件运算符的一般语法结构为:

result = <expression> ? <statement1> : <statement3>

如:int x,y,z;x = 6,y = 2;z = x>y ? x-y : x+y

在这里要计算 z 的值,首先要判断 x>y 表达的值,如果为 true,z 的值为 x-y;否则 z 的值为 x+y。很明显 x>y 表达式结果为 true,所以 z 的值为 4

运算符优先级

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值