java运算符及表达式

来源:互联网 发布:网络女主播闪现 编辑:程序博客网 时间:2024/06/14 02:29

java运算符有如下,优先级依次降低。

1、自增自减运算符 (++、--)

1)自增、自减运算符是单目运算符,可以放在操作元之前,也可以放在操作元之后,操作元必须是一个整型或者浮点型变量。

2)放在操作元之前的自增、自减运算符,会先将变量的值加1(减1),然后将该变量参加表达式运算。

3)放在操作元之后的自增、自减运算符,会先使变量的值参与表达式运算,然后再将变量加1(减1)。


2、算数运算符(+、-、*、/、%)

1)皆为双目运算符。

2)0不能为除数,否则系统抛出 ArithmeticException异常。

3)操作数必须是数值类型。


3、比较运算符(>、>=、<、<=、==、!=)

1)比较运算符的的运算结果为boolean。

2)其中==、!=可以运用于所有基本数据类型和引用型

3)其余的比较运算符只能应用于整型、浮点型、字符型。


4、位运算符(&、|、~、^、<<、>>、>>>   )

1)除了按位与、按位或外,其他只能用于处理整数的操作数。

2)左边最高位为符号位,0表示整数,1表示负数,负数采用补码表示。

3)左移就是将左边的操作数按二进制向左边移动指定的位数,右边补0.

4)右移时,如果最高位为0,则左边补0,最高位为1,则右边补1.

5)无符号右移,无论最高位是0还是1,左边都补0.

6)一个数左移n位,相当于乘于2^n,一个数右移n位,相当于除以2^n.


5、逻辑运算符(&、&&、||、!、)

1)逻辑运算符为二元运算符,除了!之外。

2)逻辑运算符的操作元必须是boolean类型,注意这里的!操作符,其操作元要注意是boolean类型。

3)结果为boolean型的变量或者表达式可以通过逻辑运算符组合为逻辑表达式。

4)&&为短路与,即当第一个表达式为false时,不会再去计算第二个表达式;而&为非短路与,会计算左右两边表达式。


6、赋值运算符(=)

1)左方的操作数必须是一个变量。

2)一个表达式若含有两个以上的=运算符,会从最右方的=开始处理。


7、三目运算符(条件式?值1:值2)

1)表达式为真,则取值1,表达式为假,则取值2.


补充

1、简便赋符,赋值运算符可以与二元算术运算符、逻辑运算值运算符和位运算符组合成简捷运算符,从而可以简化一些常用表达式的书写。


2、 方括号[]和圆括号()运算符 。 方括号[]是数组运算符,方括号[]中的数值是数组的下标,整个表达式就代表数组中该下标所在位置的元素值。 圆括号()运算符用于改变表达式中运算符的优先级。

3、字符串加(+)运算符。当操作数是字符串时,加(+)运算符用来合并两个字符串;当加(+)运算符的一边是字符串,另一边是数值时,机器将自动将数值转换为字符串,并连接为一个字符串。

4、强制类型转换符。强制类型转换符能将一个表达式的类型强制转换为某一指定数据类型。

5、对象运算符instanceof 。对象运算符instanceof用来测试一个指定对象是否是指定类(或它的子类)的实例,若是则返回true,否则返回false。

6、点运算符 。点运算符"."的功能有两个:一是引用类中成员,二是指示包的层次等级。 


java表达式

1)java中的表达式就是使用运算符连接起来的符合java规则的式子。

2)如果两个式子有相同的优先级,则左边的表达式要比右边的表达式先被处理。