运算符与运算表达式

旧街凉风 提交于 2020-01-04 01:55:06

共计七种运算符:

1、赋值运算符与赋值表达式(等号);

 

2、算术运算符与算术表达式(加减乘除余)

        如果用0 做除数,虽然可以通过编译,但是在程序运行时,会抛出异常java.lang. ArithmeticException,这在有关异常处理的章节中,会有详细讲解。

3、自增和自减运算符;

       如果++运算符放在变量名前面,那么它们被称为“前缀运算符”,如++A;如果放在变量名后面,它们就被称为“后缀运算符”,如A++。对于前缀运算符来说,它总是先自增1,然后参与运算;对于后缀运算符来说,它总是先以原来的值参与运算,然后再自增1。

4、关系运算符与关系表达式;

        算术表达式的运算结果为boolean型。当关系表达式成立时,运算结果为true;当关系表达式不成立时,运算结果为false,如表2-6所示。要注意的是,当进行相等比较时,运算符为两个连着的等号“==”,不要写成赋值运算符“=”。所有关系运算符都可以用于对整数、浮点数和字符型数据的比较,其中等于和不等于运算符可用于所有数据类型。 

5、逻辑运算符与逻辑表达式;

        有时需要将返回类型为boolean(布尔)类型的表达式组合在一起,构成一个更加复杂的表达式。

       逻辑运算符被用做逻辑上的组合,包括:与(&和&&)、或(|和||)、异或(^)、非(!)。

       5.1、与(&和&&)

       当“&&”左侧的表达式结果为false时,就不再计算其右侧的表达式,而是直接返回运算结果false。只有当“&&”左侧的表达式结果为true时,才计算其右侧的表达式,逻辑运算符&&又被称为“简洁与”或“短路与”。

       而运算符“&”与“&&”不同,不管“&”运算符左侧的运算结果是什么,都计算其右侧的表达式,再返回整个逻辑表达式的值。

       5.2、或(|和||)

       当两个关系表达式通过“|”或者“||”连接在一起时,只要两个关系表达式的值有一个为真,则该组合的表达式的值就为真(true)。只有当运算符两侧的表达式都为false时,整个逻辑表达式的值才为false。

        使用“||”,当“||”运算符左侧的表达式结果为true时,就不再计算其右侧的表达式,而是直接返回运算结果true。只有当“||”左侧的表达式结果为false时,才计算其右侧的表达式。所以,逻辑运算符“||”又被称为“简洁或”或“短路或”。

       而运算符“|”与“||”不同,不管“|”运算符左侧的运算结果是什么,都计算其右侧的表达式,再返回整个逻辑表达式的值。

       5.3、异或(^)

       当两个关系表达式通过“^”连接在一起时,只要两个关系表达式的值不相同(一个为true一个为false)时,该组合的表达式的值就为真(true)。当运算符两侧的表达式都为true或都为false时,整个逻辑表达式的值为false。

       true^false结果为true;

       5.4、非(!)

       运算符!用于对逻辑值进行取反运算。当逻辑值为true时,经过取反运算后,结果为false;当逻辑值为false时,经过取反运算后,结果为true

6、位运算符;

7、三元运算符。

     逻辑表达式?表达式1:表达式2;

     三元运算符的运算规则是:首先判断逻辑表达式的值,如果为true,整个三元表达式的值为表达式1的值;否则为表达式2的值。

如:c=a>b?a:b;

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!