算术运算:
取模记住下面的套路
1、当%左边的绝对值小于右边的绝对值时,结果是左边
2、当%左边的绝对值等于右边或者是右边绝对值的倍数时,结果是0
3、当%左边的绝对值大于右边的绝对值时,结果是余数
4、%运算符结果的符号只和左边有关系,与右边无关
5、任何一个正整数%2结果不是0就是1
++(自增) --(自减)
1、可以写在变量的前面,或后面,作用都是在原有值的基础上进行加1或减1操作
2、单独使用的时候,没有区别,参与运算的时候就有区别了
int c=10,d=20; int e=c++;//++ 写在变量的后面,先运算,后自增
int f=++d;//++ 写在变量的前面,先自增 后运算
System.out.println("c==="+c);//11
System.out.println("d==="+d);//21
System.out.println("e==="+e);//10
System.out.println("f==="+f);//21
byte b=10; b++;//因为++是运算符,b在自增的时候,是会自动强制转换的
b=b+1;//为什么这行报错?这里计算机不会帮你自动转换,因为b是变量,其内部的值是不确定的
b=1+2;//看是否超过了byte的取值范围
&/&&(与和短路与):
记住一句话:遇false则false,只有都是true,结果才是true
&:无论&符号左边的结果是ture还是false,&符号右边的代码都会执行
&&:当&&符号左边的代码结果为false,&&符号右边的代码就不执行
int x=3,y=4;
System.out.println((++x==3)&&(++y==4));
System.out.println("x==="+x);//4
System.out.println("y=="+y);//4
连接运算符:+
当+号左右两边有一边是字符串(双引号括起来的内容)的时候
那么该+号就有两个作用:
1、进行字符串连接
2、类型转换(把其他数据类型转成String类型)
int a=100; String str="a="+100;
System.out.println(str);//a=100
str=""+100+200;
System.out.println(str);//100200
三目运算符:(关系表达式)?表达式1:表达式2
执行流程:
1、先计算关系表达式的结果(boolean类型)
2、结果为true,执行表达式1
3、结果为false,执行表达式2
三目不要嵌套,尽管可以嵌套写,但是可读性很差
//求最大值 int temp=x>y ? x:y;
int max=temp>z?temp:z;
System.out.println("最大值是:"+max);