關(guān)系運(yùn)算符(relational operators )決定值和值之間的關(guān)系。例如決定相等不相等以及排列次序。關(guān)系運(yùn)算符如表4-4 所示:
表4-4 關(guān)系運(yùn)算符及其意義
運(yùn)算符意義
== 等于!= 不等于> 大于< 小于>= 大于等于<= 小于等于
這些關(guān)系運(yùn)算符產(chǎn)生的結(jié)果是布爾值。關(guān)系運(yùn)算符常常用在if控制語句和各種循環(huán)語句的表達(dá)式中。
Java 中的任何類型,包括整數(shù),浮點(diǎn)數(shù),字符,以及布爾型都可用“==”來比較是否相等,用“!=”來測試是否不等。注意Java (就像C和C++ 一樣)比較是否相等的運(yùn)算符是2 個(gè)等號(hào),而不是一個(gè)(注意:單等號(hào)是賦值運(yùn)算符)。只有數(shù)字類型可以使用排序運(yùn)算符進(jìn)行比較。也就是,只有整數(shù)、浮點(diǎn)數(shù)和字符運(yùn)算數(shù)可以用來比較哪個(gè)大哪個(gè)小。
前面已經(jīng)說過,關(guān)系運(yùn)算符的結(jié)果是布爾(boolean )類型。例如,下面的程序段對(duì)變量c的賦值是有效的:
int a = 4;
int b = 1;
boolean c = a < b;
在本例中,a int done;
// ...
if(!done) ... // Valid in C/C++
if(done) ... // but not in Java.
在Java 中,這些語句必須寫成下面這樣:
if(done == 0)) ... // This is Java-style.
if(done != 0) ...
這樣做的原因是Java 定義真和假的方法和C/C++ 中的不一樣。在C/C++ 中,真是任何非0的值而假是值0。在Java 中,真值假值是非數(shù)字的,它和0或非0聯(lián)系不到一起。因此,為了測試0值或非0值,你必須明確地用一個(gè)或多個(gè)關(guān)系運(yùn)算符。
表4-4 關(guān)系運(yùn)算符及其意義
運(yùn)算符意義
== 等于!= 不等于> 大于< 小于>= 大于等于<= 小于等于
這些關(guān)系運(yùn)算符產(chǎn)生的結(jié)果是布爾值。關(guān)系運(yùn)算符常常用在if控制語句和各種循環(huán)語句的表達(dá)式中。
Java 中的任何類型,包括整數(shù),浮點(diǎn)數(shù),字符,以及布爾型都可用“==”來比較是否相等,用“!=”來測試是否不等。注意Java (就像C和C++ 一樣)比較是否相等的運(yùn)算符是2 個(gè)等號(hào),而不是一個(gè)(注意:單等號(hào)是賦值運(yùn)算符)。只有數(shù)字類型可以使用排序運(yùn)算符進(jìn)行比較。也就是,只有整數(shù)、浮點(diǎn)數(shù)和字符運(yùn)算數(shù)可以用來比較哪個(gè)大哪個(gè)小。
前面已經(jīng)說過,關(guān)系運(yùn)算符的結(jié)果是布爾(boolean )類型。例如,下面的程序段對(duì)變量c的賦值是有效的:
int a = 4;
int b = 1;
boolean c = a < b;
在本例中,a int done;
// ...
if(!done) ... // Valid in C/C++
if(done) ... // but not in Java.
在Java 中,這些語句必須寫成下面這樣:
if(done == 0)) ... // This is Java-style.
if(done != 0) ...
這樣做的原因是Java 定義真和假的方法和C/C++ 中的不一樣。在C/C++ 中,真是任何非0的值而假是值0。在Java 中,真值假值是非數(shù)字的,它和0或非0聯(lián)系不到一起。因此,為了測試0值或非0值,你必須明確地用一個(gè)或多個(gè)關(guān)系運(yùn)算符。