一、运算符和表达式
二、算数运算符(加,减,乘,除,取余)
1、拆分个十百位公式
2、“+”操作的三种情况
(1)数字相加——隐形转换和强制转换
隐式转换(小到大,自动类型提升)
原因:数字运算时类型不一样不能运算要转成一样
提升规则:
取值范围小的,和取值大的进行运算,小的会先提升为大的,再进行运算
byte short char三种类型的数据在运算时,都会直接先提升为int,然后再进行运算
强制转换(大到小)
PS:强制转换可能会因为数值超出范围而报错
(2)字符串相加——纯拼接
(3)字符相加——ASCII查询替换
三、自增自减运算符(自增,自减)
前边则为先++(- -),eg:++a
后边则为后++(- -),eg:a++
++和 - -无论是放在变量的前后,只要是单独一行,结果就不会改变
但是如果不是单独一行,就会有两种情况:
先用后加,先加后用
先用后加(先把a变量中的值赋值给b,然后再进行自增):
int a=10;int b=a++;——————b=10
先加后用(先把a自增,再把自增后的值赋给b):
int a=10;int b=++a;——————b=11
四、赋值运算符(=,+=,-=,*=,/=,%=)
PS:+=,-=,*=,/=,%=底层都隐藏了一个强制类型转换
Eg:short s=1;//把左边和右边进行相加得到结果2,再赋值给左边的变量
s+=1;//等同于s=(short)(s+1)
五、关系运算符
六、逻辑运算符
短路逻辑运算符
取反感叹号不要多写,要么不写,要么写一次,写2次抵消(双重否定表肯定)
七、三元运算符
作用:可以进行判断,根据判断的结果得到不同的内容
整个三元运算符的结果必须要被使用
八、运算符优先级
宗旨:小括号优先级最高,想要哪个优先就先给哪个+小括号