首页 理论教育 二元算术操作符的简化书写及示例

二元算术操作符的简化书写及示例

时间:2023-11-22 理论教育 版权反馈
【摘要】:二元[2]算术操作符与等号连接使用可以达到简化书写的目的,例如a+=b[3]表示a=a+b。代码如下:运行结果如下:string value 12string value 33string valuestring value add other string可见,字符串连续与整型进行“+”操作时,由于操作符的结合性,是自左向右连接了数字,而不是进行了数字的加法操作。表1-5 操作符的优先级和结合性[4]

二元算术操作符的简化书写及示例

1.2.1节介绍了Java基本类型的概念,那么基本类型如何使用呢?基本类型的使用与操作符(运算符)是分不开的。操作符用于进行变量或者对象之间的计算或者关系判断,没有操作符就无法做任何运算、比较或者赋值。操作符主要分为以下几类,分别是算术操作符、赋值操作符、关系操作符、逻辑操作符、位操作符和其他操作符。

(1)算术操作符:包括加号(+)、减号(-)、乘号(*)、除号(/)以及取模操作符(%,除法的余数)、自增和自减运算符(++和--)。二元[2]算术操作符与等号连接使用可以达到简化书写的目的,例如a+=b[3]表示a=a+b。代码如下:

978-7-111-61011-3-Part01-8.jpg

运行结果如下:

978-7-111-61011-3-Part01-9.jpg

978-7-111-61011-3-Part01-10.jpg

由输出结果可见,运用算术操作符,可以进行对应的数学运算。请注意除法对于int类型来讲是直接去掉小数点后面数字的,而不是四舍五入;自增自减操作符写在不同的位置得到的结果是不同的;简化的运算符赋值写法会改变左侧变量的值。

(2)赋值操作符:从前面的例子可以看到一个常用的符号“=”,它的目的就是把右边的值赋值给左边。有些书把“+=”操作符也归入赋值操作符,但是作者认为这仅仅是算术操作符与赋值操作符的一种简化合并写法,列入算术操作符或赋值操作符均可,这里就不再过多介绍。

(3)关系操作符:主要包含6种操作符,具体含义见表1-3。

1-3 关系操作符

978-7-111-61011-3-Part01-11.jpg

下面通过代码演示关系操作符的使用方法及判断结果。

978-7-111-61011-3-Part01-12.jpg

运行结果如下:

value==10 is true

value!=10 is false

value!=11 is true

value>9 is true

value<9 is false

value>=10 is true

value<=8 is false

可以把关系操作符用于变量之间的比较,本例为了直观直接使用数值进行比较。

(4)逻辑操作符:包含逻辑与操作符“&&”,逻辑或操作符“||”,逻辑非操作符“!”。逻辑与操作符当两侧都为真时为真,逻辑或操作符当两侧有一个为真时为真,逻辑非操作符表示取反。

下面所示代码演示了逻辑操作符的使用方法。逻辑或操作符稍有特殊:当第一个表达式为真时,不再执行第二个表达式,这种情况称为短路。

978-7-111-61011-3-Part01-13.jpg

978-7-111-61011-3-Part01-14.jpg

运行结果如下:

978-7-111-61011-3-Part01-15.jpg(www.xing528.com)

(5)位操作符:用来操作整数基本数据类型中的二进制位。这种用法在实际使用中比较少用。下面以整数类型int为例,讲解位操作符的用法。代码如下:

978-7-111-61011-3-Part01-16.jpg

运行结果如下:

978-7-111-61011-3-Part01-17.jpg

978-7-111-61011-3-Part01-18.jpg

上面例子中使用的Integer.toBinaryString()方法,是转化整型数为二进制数的展示。代码中先打印了两个整数的二进制的展示形式,然后通过位操作符对数字进行操作,获取结果。位操作符的含义见表1-4。

1-4 位操作符

978-7-111-61011-3-Part01-19.jpg

表中难以理解的地方就是负数的位操作,但是这种操作使用较少,待使用时再详细了解 即可。

(6)三元操作符:此操作符较为特殊,因为它有3个操作数。简单来讲,此操作符通过第一个操作数的判断条件是否为真,在后面两个操作数中选择一个。

Condition?value0:value1;

如果Condition为真,选择value0,否则选择value1。代码如下:

978-7-111-61011-3-Part01-20.jpg

运行结果如下:

condition operator trueCondition=conditionTrue

condition operator falseCondition=conditionFalse

(7)字符串操作符:前面的例子中已经大量使用此操作符,字符串的连接通过操作符“+”或者“+=”实现,其他类型和字符串进行“+”操作时会转化为字符串。代码如下:

978-7-111-61011-3-Part01-21.jpg

运行结果如下:

string value 12

string value 3

3string value

string value add other string

可见,字符串连续与整型进行“+”操作时,由于操作符的结合性,是自左向右连接了数字,而不是进行了数字的加法操作。当用()把数字括起来后,数字才可以正确相加,这又涉及了操作符的优先级,见表1-5。

1-5 操作符的优先级和结合性[4]

978-7-111-61011-3-Part01-22.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈