java算数运算
运算符
算术运算符:
加法(+)减法(-)乘法 (*) 除法(/) 取模(%)
加法:
String类型:字符串的拼接。
除法:
1.0/0 显示Infinity无穷大
0.0/0.0 显示NaN:not a number不是一个数值
0.0/0.0 == 0.0/0.0 在java中自身不等于自身的情况 结果为false
取模也叫取余
自增自减:
自增自减只能用于变量:运算符的优先级高于其他运算符。
运算规则:
1.自增运算作用于变量自身(i++ ++i)
变量的值自增加1
2.使用变量与自增运算符表达式的结果,赋值给另外一个变量
一.自增运算符在右边:表达式的结果为变量原来的值,作为表达式的结果。变量依然是会进行自增
二.自增运算符在左边:表达式的结果为变量原来的值自增之后的值,作为表达式的结果。变量还是会自增
3.用变量与自增运算符表达式的结果,赋值给变量本身
y=y++:先缓存表达式的结果,再自增,最后将表达式的结果赋值给y
y=++y:表达式的结果为变量原来的值自增之后,最后将表达式的结果赋值给y
赋值运算符:
运算符号为有:= += -= *= /= %=
由右往左赋值
存在隐式转换,例如i *= 2.0只能看成是i = i * 2.0实际结果为定义的Int型
比较运算符
符号:== != > < >= <= instanceof(类型比较运算符,只能用于引用类型数据比较)
注意:
- 比较运算符表达式的结果类型为boolean
- == != > < >= <=是二元运算符,操作数只能有两个
- instanceof 是判断一个对象是否属于某种类类型
Instanceof的运算规则:
值变量或者表达式 要为instanceof类型
逻辑运算符
&(与) |(或) &&(双与逻辑与) ||(双或逻辑或) ^异或 !非
逻辑运算符的规则:
&:两边都为true ,结果为true
|:只要有一边为true,结果为true
&&:两边都为true ,结果为true
||: 只要有一边为true,结果为true
^: 两边不一样,结果为true ,否则为false
!: 逻辑非
1.两边参数与运算的数据类型都是boolean类型
2.逻辑运算符表达式的结果类型为boolean
逻辑运算符的作用:
是应用于多个条件的组合判断。
&& ||和& |的区别:
& | 既可以充当逻辑运算,也可以是位运算符
根据表达式的结果是否为 布尔类型 来判断
&& || 存在短路行为:
&&:当前面为false的时候,整个表达式的结果就为false后面的表达式就不再运算
||:当前面为true的时候,整个表达式的就为true后面的表达式不在运算
位运算(了解)
概念:二进制的为运算把1看成true,把0看成false.
三目运算:
语法:
A ? B :C
A:一个boolean类型的表达式
B和C的结果类型一般是相同的
规则
根据A的结果:如果为true整个三目运算符表达式的结果为B表达式的结果
如果为false整个三目运算符表达式的结果为c表达式的结果
注意:
三目运算符需要一个变量接收