目录
一、关系运算符
二、关系表达式
三、优先级与结合性
一、关系运算符
关系运算符包括大于、大于等于、小于、小于等于、等于和不等于
注意:符号“>=”(大于等于)与“<=”(小于等于)的意思分别是大于或等于、小于或等于。
二、关系表达式
关系运算符用于对两个表达式的值进行比较,返回一个真值或者假值。返回真值还是假值,取决于表达式中的值和所用的运算符。其中真值为1,假值为0,真值表示指定的关系成立,假值则表示指定的关系不成立。例如:
关系运算符通常用来构造条件表达式,多用在程序流程控制语句中。例如,if语句是用于判断条件而执行语句块,在其中使用关系表达式作为判断条件,如果关系表达式返回的是真值,则执行下面的语句块;如果为假值,就不去执行。代码如下:
其中,if(iCount<10)就是判断iCount小于10这个关系是否成立,如果成立则为真,如果不
成立则为假。
注意:
在进行判断时,一定要注意等号运算符“==”的使用,千万不要与赋值运算符“=”弄混。如
在if语句中进行判断,使用的是“=”:
上面的代码看上去是在检验变量Amount是否等于常量100,但是事实上没有起到这个效果。因为表达式使用的是赋值运算符“=”而不是等于运算符“==”。赋值表达式Amount=100,本身也是表达式,其返回值是100。既然是100,说明是非零值也就是真值,则该表达式的值始终为真值,没有起到进行判断的作用。如果赋值表达式右侧不是常量100,而是变量,则赋值表达式的真值或假值就由这个变量的值决定。
三、优先级与结合性
关系运算符的结合性都是自左向右的。使用关系运算符时常常会判断两个表达式的关系,但是由于运算符存在着优先级的问题,因此如果不小心处理则会出现错误。例如,先对一个变量进行赋值,然后判断这个赋值的变量是否不等于一个常数,代码如下:
因为“!=”运算符比“=”的优先级要高,所以NewNum!=10的判断操作会在赋值之前实现,变量Number得到的就是关系表达式的真值或者假值,这样并不会按照之前的意愿执行。
前文曾经介绍过括号运算符,其优先级具有最高性,因此应该使用括号来表示需要优先进行计算的表达式,例如: