一.算数运算符:
1.+,加法运算符:
var a = 3.4;
var b = 2.7;
System.out.println(a + b);
加法运算符还可以用于字符串的连接操作。
2.-,减法运算符:
System.out.println(a - b);
3.*,乘法运算符:
//乘法运算符
System.out.println(a * b);
4./,除法运算符:
//除法运算符
System.out.println(a / b);
//正浮点数除以0,得到无穷大
System.out.println(a / 0);
除法运算符里面注意事项:
(1)如果两个数都是整数,除数也是整数,与数据类型最高级别相同类型;
(2)如果两个数都是整数,除数是0,那么将引发除数异常;
(3)如果两个数都是浮点数,那么结果与最高类型浮点数类型相同为浮点数;
(4)如果两个数都是浮点数,但是除数是0,将得到正无穷大infinity
5.%,求余运算符,
(1)整数对整数进行求余运算,得到的还是整数,但是此时除数不能是0,否则将引发报错;
(2)浮点数求余操作的时候,得到的余数还是浮点数,如果除数为0,将得到非数NAN;
6.++:自加,运算符
(1)自加是单目运算符,只能操作单个数;
(2)自加运算符只能操作单个数值变量(整数或浮点数),但是没法操作常量或者表达式
(3)++运算符放在操作数的左边,先进行加1操作,然后在放入表达式当中运算;放在操作数的右边,先放入表达式当中进行运算,然后再进行+1操作。
--的运算符与++的操作相类似,只不过是操作数-1
注意:自加自减只能用于操作变量直接量,不可以用于操作数值直接量、常量或者表达式
7.Java提供了其他更为复杂的运算符,需要完成开方、平方等运算,需要借助java.lang.Math类工具实现复杂的数学运算。
import java.lang.Math;
var a = 4.0;
//求4的平方是多少
System.out.println("4的平方是:"+Math.pow(a , 2));
//4的平方根是多少
System.out.println("4的平方根是:"+Math.sqrt(a));
//生成一个随机数
var b = Math.random();
//生成的随机数b的数值是
System.out.println("生成的随机数b的数值是:"+b);
System.out.println("生成的随机数b的平方根是:"+Math.sin(b));
二.Java提供了专门的"="用于赋值运算符,
(1)使用赋值运算符将一个直接量直接赋值给变量;
(2)使用赋值运算符将一个变量的值赋值给另外一个变量;
(3)使用赋值运算符将表达式的值赋值给变量。
三.1.Java支持位运算符的有7个:
(1)&:与,两边都是1才返回1;
(2)|:或,两边有一个为1返回即为1;
(3)~:按位非,将操作数的每个数取反;
(4)^:异或,两位相同即为0,相反即为1;
(5)>>:右移运算符;
(6)<<:左移运算符;
(7)>>>:无符号右移运算符
2.对于位与运算符得遵循以下规则:
(1)对于低于int类型的操作数(byte、short、char)总是先转换为int类型,然后在进行操作;
(2)对于int类型的整数位移a >> b,b>32位时,b先对32进行求余,得到的结果才是真正位移的位数,a>>33与a>>1是一样的;
(3)对于long类型的整数位移a >>64,总是先对64求余,得到的结果才是真正需要位移的位数。