什么是运算符?

运算符是一种符号,用来表示数据之间的运算。如:+ 、- 、* 、\、=等

运算符分类:
  • 算术运算符
  • 赋值运算符
  • 比较运算符
  • 逻辑运算符
  • 位运算符
运算符的优先级和结合性:

如果是一连串的运算,就需要考虑

a = 5+3*2/(1+6)-1;
算术运算符


如a=3;b=2;





运算符

运算

范例

结果

说明

+

正号

a=+b;

a=2;


-

负号

a=-b;

a=-2;


+


a= a+b;

a=5;

把a和b相加的值给a

-


a=a-b;

a=1;


*


a=a*b;

a=6;


/


a=a/b;

a=1;

由于是整形,所以a/b的值为整形1

%

取模

a=a%b;

a=1;

把a除b的余数赋值给a

++

自增(前)

b=++a;

b=4;a=4;

先让a的值加1,再把a的值赋值给b

++

自增(后)

b=a++;

b=3;a=4;

先把a的值赋值给b,再让a的值加1

- -

自减(前)

b=- -a;

b=2;a=2;

先让a的值-1,再把a的值赋值给b

- -

自减(后)

b=a- -;

b=3;a=2;

先把a的值赋给b,再让a减1


字符串相加

“Hello ”+”World”

“Hello World”


赋值运算符

运算符

运算赋值

范例

结果

说明

 =

赋值

a=3;b=2;

a=3;b=2;


+=

加等于

a=3;b=2;a+=b

a=5;b=2;

a=a+b;

-=

减等于

a=3;b=2;a-=b;

a=1;b=2;

a=a-b;

*=

乘等于

a=3;b=2;a*=b;

a=6;b=2;

a=a*b;

/=

除等于

a=3;b=2;a/=b;

a=1;b=2;

a=a/b;

%=

模等于

a=3;b=2;a%=b;

a=1;b=2;

a=a%b;

比较运算符

运算符

含义

示例

==

等于

a==b

!=

不等于

a!=b

>

大于

a>b

<

小于

a<b

>=

大于或等于

a>=b

<=

小于或等于

a<=b

instanceof

检查是否是该类的一个对象


“aa”instanceof String

 


比较运算符的结果是boolean类型的,也就是值只有两种true/false;

注意:比较运算符中的”==“不能误写成”=“

逻辑运算符

运算符

含义

示例

&

逻辑与

A & B

|

逻辑或

A | B

^

逻辑异或

A ^ B

!

逻辑反

 ! A

||

短路或

A || B

&&

短路与

A && B

逻辑运算符中的&和&&的区别:

  • &无论任何情况,&两边的表达式都要运算
  • &&如果左边式false,则不会计算右边的表达式

|和||的区别:

  • |无论任何情况,|两边的表达式都要运算
  • ||如果左边表达式的值为true,则不会计算右边表达式的值
位运算符

运算符

含义

示例

按位非(NOT)/取反 

b = ~a 

按位与(AND) 

c = a & b 

按位或(OR) 

c = a | b 

按位异或(XOR) 

c = a ^ b 

>> 

右移 

b = a >> 2 

>>> 

无符号右移,左边空出的位以0填充 

b = a >>> 2 

<< 

左移 

b = a << 1 

 

<h5三木运算符(?:)

条件?表达式1:表达式2;

如果条件的值为true则这个表达式的值为表达式1的值,否则为表达式2的值