- 运算符对一个或者多个值进行运算 并得出一个运算结果
- 运算符的运算结果类型有的是固定的 有时候会根据被计算的值变化 比如两个int相加 结果的类型就是int 两个byte相加 返回值的类型就是int
- 混淆点:除赋值运算符外 运算符本身不会更改变量的值
-
用来计算余数
-
负数也可以被取模
-
负数也可以取模
-
小数也可以取模
-
例:int num = 10;
-
num % 2 结果为0
-
num % -3 结果为1
-
num % 4 结果为2
-
num % 5 结果为0
-
num % -6 结果为4
int除以int还是int 不会变成浮点数
除法运算的结果类型取决于被操作数的数据类型 例如int所得出的结果只能是整数 与运算结果应该是多少没有关系 如果想要得到浮点型的结果就要将其中的一个int改成double
比较运算符和布尔运算符 1.比较运算符-
=
- <
- <=
- !=
- ==
2.例:int a = 10; int b = 15; int c = 10; - a>b false
- a>=b false
- a
- a<=b true
- a!=b true
- a!=c false
- a>=c true
- a<=c true
- a==b false
- a==c true
- !叫做非运算符 not运算符 !true是false !flase是true
- &叫做且运算符 and运算符 true&true是true true&false是false
- &&叫做且且运算符 andand运算符 运算结果和&一样
- |叫做或运算符 or运算符 true|false是true false|false是false true|true是true
- ||叫做或或运算符 oror运算符 运算结果和|一样
4.例:boolean a = true; boolean b = false; - a && b false
- a & b false
- a || b true
- a | b true
小括号运算符内可以包括任何运算符 决定运算符的顺序
例:int a = 10; int b = 88;
boolean c =((a+b)a-9(a+b)) == (a+b); true
运算符优先级1.运算符优先级
- ()
- !
- *,/,%
- +,-
-
,>=,<,<=
- ==
- !=
- &,&&,|,||
- =
2.理解运算符 灵活记忆优先级
(1)为什么等号的优先级最低?
因为等号是赋值运算需要右边的运算结果进行赋值给另一边
(2)为什么布尔运算符的优先级低于比较运算符?
布尔运算符的操作数是布尔值 布尔值通过比较运算符运算得出
(3)为什么比较运算符的优先级比算术运算符低?
比较运算符所要运算的数是需要算术运算符计算出来的



