1. WpiszBoolean
Jak już widzieliśmy, Java ma bardzo przydatny operator - if-else
. Wykonuje jeden blok poleceń, jeśli warunek w nawiasach jest prawdziwy, a drugi blok poleceń, jeśli warunek jest fałszywy.
Aby ułatwić pracę z wyrażeniami, które mogą być prawdziwe lub fałszywe, Java dodała specjalny typ - boolean
. Jego główną cechą jest to, że zmienne tego typu mogą przyjmować tylko dwie wartości: true
( prawda ) i false
( fałsz ).
Żadne inne wartości nie mogą być przypisane do zmiennych typu boolean
. Kompilator na to nie pozwoli.
I dlaczego potrzebny jest taki prymitywny typ?
Chodzi o to, że można w nim przechowywać wartości wyrażeń logicznych. Przykład:
Kod | Wyjaśnienie |
---|---|
|
Zmienna logiczna isOK zawiera wartość true ( prawda ) |
|
Zmienna logiczna hasError zawiera wartość false ( false ) |
|
Zmienna logiczna isSenior zawiera wartość true ( prawda ) |
|
Zmienna logiczna hasNewRecord zawiera wartość true ( prawda ) |
|
Zmienna logiczna Zmienna logiczna |
2. Używanie zmiennych boolowskich
Zmienne boolowskie byłyby mało przydatne, gdyby mogły przechowywać tylko wyniki wyrażeń. Rzecz w tym, że nadal można ich używać. Gdzie? Tak, wszędzie tam, gdzie można napisać wyrażenie logiczne.
Na przykład zmienną logiczną można zastąpić w if
warunku -a:
Kod | Równowartość |
---|---|
|
|
W tym przykładzie korzyści z takiej zamiany są niewielkie, ale im większy program, tym trudniejsze są jego warunki. Przekonacie się o tym w niedalekiej przyszłości.
3. Operatory porównania
W Javie, podobnie jak w innych językach programowania, często trzeba porównywać ze sobą zmienne. A dla porównania w Javie są takie operatory:
Operator | Wyjaśnienie | Przykład |
---|---|---|
< |
Mniej | a < 10 |
> |
Więcej | b > a |
<= |
Mniejsze lub równe | a <= 10 |
>= |
Większe lub równe | speed >= max |
== |
Równa się | age == 18 |
!= |
Nie równe | time != 0 |
Wynikiem każdego z powyższych operatorów będzie wyrażenie logiczne. Może być przechowywany w zmiennej typu boolean
lub używany jako warunek w if
.
Instrukcje dwuznakowe nie mogą być łamane.
Te. taki kod nie skompiluje się:
a < = 10
speed > = max
age = = 18
time ! = 0
Zauważ, że nie ma operatorów =>
i =<
: są tylko <=
i >=
. Jeśli napiszesz , Twój kod po prostu się nie skompiluje.a=< 3
W Javie nie można napisać wyrażenia takiego jak . W końcu wyrażenie będzie miało wartość lub . A porównanie (różne typy) jest niemożliwe. Przynajmniej w języku Java.18 < age < 65
18 < age
true
false
true < 65
I co robić? Odpowiedź na to pytanie znajdziesz w następnym wykładzie.
GO TO FULL VERSION