1. Booleantípus
Mint már láttuk, a Java rendkívül hasznos if-elsekijelentéssel rendelkezik. Egy utasításblokkot hajt végre, ha a zárójelben lévő feltétel igaz, és egy második utasításblokkot, ha a feltétel hamis.
Az igaz vagy hamis kifejezésekkel végzett munka kényelme érdekében a Java alkotója hozzáadta a speciális booleantípust. Fő jellemzője, hogy az ilyen típusú változók csak két értéket vehetnek fel: trueés false.
Lehetetlen más értéket hozzárendelni a változókhoz boolean. A fordító nem engedi.
És miért van szükségünk egy ilyen primitív típusra?
Nos, az a jó, hogy logikai kifejezések értékeinek tárolására használható. Példa:
| Kód | Magyarázat |
|---|---|
|
A logikai isOKváltozó tartalmazza az értékettrue |
|
A logikai hasErrorváltozó tartalmazza az értéketfalse |
|
A logikai isSeniorváltozó tartalmazza az értékettrue |
|
A logikai hasNewRecordváltozó tartalmazza az értékettrue |
|
A logikai A logikai |
2. Logikai változók használata
A logikai változóknak nem sok haszna lenne, ha csak a kifejezések eredményeit tudnák tárolni. Itt az a lényeg, hogy te is használhatod őket. Ahol? Bárhol, ahol logikai kifejezést írhat.
Például használhat logikai változót egy ifutasítás feltételében:
| Kód | Egyenértékű |
|---|---|
|
|
Ebben a példában kevés haszon származik a csere végrehajtásából, de amikor a programok növekednek, a feltételek bonyolultabbá válnak. Erről a közeljövőben meg fog győződni.
3. Összehasonlító operátorok
A Java-ban, akárcsak más programozási nyelvekben, gyakran szükséges a változók összehasonlítása egymással. A Java-ban pedig csak az összehasonlításhoz szükséges operátorok vannak:
| Operátor | Magyarázat | Példa |
|---|---|---|
< |
Kevesebb, mint | a < 10 |
> |
Nagyobb, mint | b > a |
<= |
Kisebb vagy egyenlő | a <= 10 |
>= |
Nagyobb vagy egyenlő | speed >= max |
== |
Egyenlő | age == 18 |
!= |
Nem egyenlő | time != 0 |
A fenti operátorok logikai kifejezések előállítására szolgálnak. Az eredmények változókban tárolhatók, booleanvagy egy utasítás feltételeként használhatók if.
A két karakterből álló operátorok nem oszthatók szét.
Más szavakkal, az ehhez hasonló kód nem fordítható le:
a < = 10
speed > = max
age = = 18
time ! = 0
Vegye figyelembe, hogy nincsenek =>vagy =<operátorok. Csak a <=és >=operátorok. Ha beírod , a kódod egyszerűen nem fordítható le.a=< 3
Java nyelven nem írhat olyan kifejezést, mint . Végül is a kifejezés vagy -ra lesz kiértékelve . És nem tudja elvégezni az összehasonlítást (a típusok különbözőek). Legalábbis Java-ban.18 < age < 6518 < agetruefalsetrue < 65
Mit lehet tenni? Erre a kérdésre a következő leckében megtalálja a választ.
GO TO FULL VERSION