13--Java运算符

Java运算符

一、Java运算符概述

1、运算符概述

(1)运算:对常量和变量进行操作的过程称为运算。

(2)运算符:对常量和变量进行操作的符号称为运算符

(3)操作数: 参与运算的数据称为操作数

(4)表达式:用运算符把常量或者变量连接起来符合java语法的式子就可以称为表达式。不同运算符连接的式子体现的是不同类型的表达式。

(5)举例:加法运算

      int a = 3 + 4;

      +就是运算符,是算术运算符,我们还有其他很多的运算符

      3,4就是参与运算的操作数据

      3 + 4整体其实就是一个算数表达式

二、Java算术运算符

1、算术运算符

13--Java运算符

2、算术运算符注意事项

(1)+的几种作用:加法、正数、字符串连接符

(2)整数相除,只能得到整数,要想得到小数,可以*1.0

(3)++与--:单独使用效果相同,参与运算时,在操作数前后效果不同。

二、Java赋值运算符

1、赋值运算符

(1)基本赋值运算符:=

(2)扩展赋值运算符:+=、-=、*=、/=、%=

(3)扩展运算符隐含默认转换功能:

      short s = 1;

      s += 1;等价于 s = (s的数据类型)(s + 1);

三、Java比较运算符

1、关系运算符

13--Java运算符

2、关系运算符注意事项

(1)比较运算符的结果都是boolean型,也就是要么true或者false

(2)注意与赋值运算符=的区别。

四、Java逻辑运算符

1、逻辑运算符

13--Java运算符

2、逻辑运算符注意事项

       (1)逻辑运算符用于连接布尔型表达式,在Java里面3<x<6是错误的,需要写成x>3 & x<6。

(2)&与&&区别:双&&有短路效果,建议使用

单&时,左边无论真假,右边都进行运算。

    双&&时,如果左边为真,右边参与运算,若为假,右边不再参与运算。

(3)|与||区别:双||有短路效果,建议使用

单|时:左边无论真假,右边都进行运算。

       双||时:如果左边为假,右边参与运算,若为真,右边不再参与运算。

(4)^异或与|区别:当左右都为true时,结果为false。

五、Java位运算符

1、位运算符

位运算符:直接对二进制直接运算

运算符

运算

范例

<< 

左移:空位补0,被移除的高位丢弃

3 << 2 = 12 --> 3*2*2=12

>> 

右移:被移位的二进制最高位是0,右移后,空缺位补0;最高位是1,最高位补1

3 >> 1 = 1  --> 3/2=1

>>> 

无符号右移:被移位二进制最高位无论是0或者是1,空缺位都补0

3 >>> 1 = 1 --> 3/2=1

&

与运算:任何二进制位和0进行&运算,结果是0;

和1进行&运算结果是原值

6 & 3 = 2

|

或运算:任何二进制位和0进行 | 运算,结果是原值;和1进行 | 运算结果是1

6 | 3 = 7

^

异或运算:任何相同二进制位进行 ^ 运算,结果是0;不相同二进制位 ^ 运算结果是1

6 ^ 3 = 5

~

反码

~6 = -7

六、Java三目运算符

1、三目运算符

(1)格式

(关系表达式)?表达式1:表达式2;

如果条件为true,运算后的结果是表达式1;

如果条件为false,运算后的结果是表达式2;

(2)示例:

获取两个数中大数。

intx=3,y=4,z;

z= (x>y)?x:y;//z变量存储的就是两个数的大数