算数运算符
![]() |
| 算数运算符 |
| 一、加减乘除+-*/ |
|
【】java是强类型语言,两个整数做运算结果一定还是一个整数,整数做除法得到的小数位会被自动舍弃
所以6750/1000本应是6.75舍弃小数就是整数6 也可以理解为被除后有商有余数,舍弃余数,只保留商 |
| 【】两个非常大的变量相加,超了int范围,编译器会舍弃超出的位,虽然值是错的,但是可以通过检查完成编译; |
|
二、取模%
|
|
【】模运算,取余数---% 5%2=1 就是5/2=2---1 2%5=2 就是2/5=0---2 取模运算, 如果左边小于右边,结果就是左边;左边等于右边,结果就是0; |
|
【】取模遇到负数计算 -5%3=-2 就是-(5%3=2) 5%-3=2 就是5/-3=-1----2 |
|
【】取模的用法: 任何整数取模2,结果不是0就是1,可以用于开关算法、奇数偶数判断; 任何数对某数值取模为零,可以用于某数的倍数判断。 |
| 三、字符串的连接符+ |
|
【】任何数据和字符串相加都是相连接,无论在字符串前后,都会拼成一个更大的字符串 【】字符串后面的数据类型全部自动转变为字符串类型
打印结果:5+5=55 【】想要在字符串后数据先计算,需要体现优先级,加上小括号(),小括号内的数据先计算
打印结果: 5+5=10 【】想要打印a和b的值,则在中间插入字符串即可
【】想打印a=4,b=5,需要分析那些是固定的,那些是变化的 “a=”固定4变化“,b=”固定5变化 |
| 四、自增、自减 |
|
a++ 就是a=a+1 b=a++ 就是a先赋值给b,之后a再自增 b=a,a=a+1 b=++a就是a先自增,之后a自增后的值再赋给b a=a+1,b=a 但是实际底层过程是a先运算,之后再赋值给b;a会临时开辟一片空间,临时存储原数据; |
|
赋值运算符=
|
|
【】同时定义三个变量,并同时赋值;将右边赋给左边。
|
| +=将左右两边的和赋给左边;a+=2 就是a=a+2; |
|
【】赋值运算符=会检查3是否在short范围内,在范围内会做一个自动强制转换动作 【】加等也是赋值运算符,+=会在加完之后也会检查结果是否在short范围内,做一个自动转换动作, 【】s=s+4;不做这个转换,只提升到四个字节;应该s=(short)(s+4)才能不报错 【】总之,第二个会报错,因为自动提升后的值无法直接赋给short,会出现精度丢失。而加总在自动提升后还有一个自动的强制转换,这是赋值运算符的特点。加等不是这种写法的简写形式,而是有自动转换过程,实际上加等是s=(short)(s+4)的简写形式。 |







浙公网安备 33010602011771号