java语言中的运算符
java语言支持如下运算符
算术运算符:+,-,*,/,%,++,--
赋值运算符:=
关系运算符:>,<,>=,<=,==,!=instanceof
逻辑运算符:&&,||,!
位运算符:&,|,^,~,>>,<<,>>>(了解!!!)
条件运算符?:
扩展赋值运算符:+=,-=,*=,/=
1)取模运算符%
首先,加减乘除(+ - * /)运算中要注意一点:对于”/“来说两个整数相除其结果还是整数,例如5/3=1。再来介绍一下“%”这个运算符,”%“运算符在JAVA里面代表取余运算也叫做模运算:顾名思义就是取余。例如10÷4等于2余2,所以10%4=2。
2)赋值运算符=
”=“号是赋值运算符在JAVA中最为常见
int b=a;含义是将a的值赋值给b
此外应该注意,”==“在JAVA中代表等于的意思,是关系运算符,代表前后变量值相等 。
其中JAVA语言中的关系运算符还有:
1、“!= ” 是不等于的意思。
2、“< ”是小于的意思
3、“< =” 是小于等于的意思。
4、“> ”是大于的意思
5、“> =” 是大于等于的意思。
3)自增自减运算符 ++和--:
自增运算符 ++ 会把操作数加 1,自减运算符 -- 会把操作数减 1
下面用代码详细操作下:
应该是再给c赋值!
代码输出后 a=5,b=4,c=6
注意a++和++a的区别:对于int b=a++和int c=++a前者是先把a的值赋值给a再自增(即加一);
后者是a先自增,然后再把自增后的值赋值给c。
3.1)与或非 (逻辑运算符)
&& 与:逻辑与运算,两个变量都为真,结果才为真。
|| 或:逻辑或运算:两个变量有一个为真,则其结果才为true。
! 非:如果是真,则变为假,如果是假则变为真。
下面用代码实际操作下:
代码输出后 a=5,b=4,c=6
注意a++和++a的区别:对于int b=a++和int c=++a前者是先把a的值赋值给a再自增(即加一);
后者是a先自增,然后再把自增后的值赋值给c。
3.1)与或非 (逻辑运算符)
&& 与:逻辑与运算,两个变量都为真,结果才为真。
|| 或:逻辑或运算:两个变量有一个为真,则其结果才为true。
! 非:如果是真,则变为假,如果是假则变为真。
3.2)与或非(位运算符)
& 按位与 |按位或 ^按位异或 ~取反
.>>右移 <<左移
下面用代码实际操作下:
位运算符简而言之是根据位来的
因此 :
^:位运算符 异或运算 相同为0,不同为1.
&:两个都为1 才为1 否则为0。
| : 如果对应为都为0,结果为0,否则则为1
注意: "<<",“>>”了解即可
<< :乘法
.>>:除法
字符串连接符 :"+" ,String字符串在前面,括号内会拼接;String字符串在后面的话前面会依旧进行运算!!
4)三元运算符
2.2.2 运算符的优先级 (1)Java中的各种运算符都有自己的优先级和结合性。 (2)优先级:在表达式运算中的运算顺序。优先级越高,在表达式中运算顺序越靠前。 (3)结合性:运算的方向,大多数运算符的结合性都是从左向右,即从左向右依次进行运算。 (4)优先级别最低的是赋值运算符,其次是条件运算符。 (5)单目运算符包括!、~、++、--,优先级别高。 (6)可以通过“()”控制表达式的运算顺序,“()”优先级最高。 (7)总体而言:优先顺序为算术运算符>关系运算符>逻辑运算符 (8)结合性从右向左的只有赋值运算符、三目运算符和单目运算符(一个操作数)。 (9)运算符的优先级如下所示: 优先级 运算符 结合性 1 ()、[]、. 从左向右 2 !、~、++、-- 从右向左 3 、/、% 从左向右 4 +、- 从左向右 5 <<、>>、>>> 从左向右 6 <、<=、>、>=、instanceof 从左向右 7 ==、!= 从左向右 8 & 从左向右 9 ^ 从左向右 10 | 从左向右 11 && 从左向右 12 || 从左向右 13 ?: 从右向左 14 =、+=、-=、=、/=、%=、|=、^=、~=、<<=、>>=、>>>= 从右向左
标签:优先级,java,运算,++,运算符,左向右,赋值,语言 From: https://www.cnblogs.com/dalaoguo/p/16814942.html