运算符
算术运算符
System.out.println(7/2);//当整数除以整数时,会把结果的小数部分舍去,只保留整数部分
int i = 0;
int k = i++;
//++和—分别是加一和减一的运算,++或者—符号在变量之前,先对变量进行运算然后再取变量的值
//如果++或者—符号再变量之后,就先取变量的值,再对变量进行运算
//字符串的+是字符串的拼接
赋值运算符
符号: =
当”+”两侧的数据类型不一致时,可以使用自动类型转换或使用强制类型转换原则进行处理;并支持连续赋值;
扩展赋值运算符:+=,-=,*=,/=,%= (本身 加/减/乘/除/取模/ 后面的值后再赋值给原来的变量)
注:字符串String只有+=,无其他操作
i = s;//自动类型转换
s = (short)i;//强制类型转换
i = i + 2;
i += 2;//扩展运算(本身加上后面的值后再赋值给原来的变量)
short s = 3;
s = (short)(s + 3);//变量参与运算的时候,java程序不知道具体的变量再做完运算后会不会超出当前变量的范围
//所以会先把变量转化为一个更大的长度,这个例子中short是一个短整型数据,会转化为默认的int类型
s += 3;//在使用扩展赋值运算符时,变量在参与运算时会把结果自动强制转换为当前变量的类型
int i = 1;
i *= 0.1;//等价于i =(int) (i * 0.1)
//在使用扩展赋值运算符时,变量在参与运算时会把结果自动强制转换为当前变量的类型
比较运算符
比较运算符的结果都是boolean型,也就是结果要么时true,要么是false
比骄傲运算符“==”不能误写为“=”
逻辑运算符
并且 或者 异或 非
位运算符
直接对二进制进行运算
三元运算符(三目运算符)
格式:
(条件表达式)?表达式1:表达式2;
true,运算后的结果是表达式1;
false,运算后的结果是表达式2;
运算符的优先级
注:可以使用小括号来提高效果要计算部分的优先级