Operatory logiczne
Dzięki tym instrukcjom możemy wykonywać kod w zależności od sytuacji. Ich działanie opiera się o sprawdzenie wartości logicznej
Wynik działań logicznych to true lub false. Używając poniższych operatorów możemy sprawdzić np. czy wartości są takie same.
Jeżeli warunek operacji logicznej jest spełniony, zwracany jest wynik true, w przeciwnym wypadku operacja zwraca false.
Operatory logiczne wykorzystuje się najczęściej w instrukcjach warunkowych
Operator | Opis | Znak |
---|---|---|
Operator równości wartości | Sprawdza czy wartości po obu stronach są równe lub takie same. | == |
Operator równości wartości i typu | Sprawdza czy wartości po obu stronach są równe lub takie same. Oraz czy typ wartości jest ten sam. | === |
Operator różności | Sprawdza czy wartości po obu stronach są różne. Odwrotność operatora równości. | != |
Operator większy niż | Sprawdza czy wartość po lewej stronie jest większa niż wartość po prawej. | > |
Operator mniejszy niż | Sprawdza czy wartość po lewej stronie jest mniejsz niż wartość po prawej. | < |
Operator większy lub równy | Sprawdza czy wartość po lewej stronie jest większa lub równa niż wartość po prawej | >= |
Operator mniejszy lub równy | Sprawdza czy wartość po lewej stronie jest mniejsza lub równa niż wartość po prawej | <= |
Operator negacji. | Odwraca wartość logiczną zmiennej lub wyrażenia. | ! |
if ( 1 == 1 ) {
// jakiś kod
}
Przekuwając to na słowa:
Czy wartość 1 jest równa 1? Oczywiście tak, więc wyrażenie zwróci wartość true, a następnie wykona "jakiś" kod :)
if ( !(10 <= 1 )) {
// jakiś kod
}
Przekuwając to na słowa:
Czy wartość 10 jest mniejsza lub równa równa 1? Oczywiście nie, więc wyrażenie będzie posiadać wartość false. Jednak przed operacją porównania występuje negacja (!). Czyli false zostanie zmieniony na true.
Oznacza to tyle, że całe wyrażenie ma wartość true, czyli prawda.
Z tej okazji zostanie wykonany "jakiś kod" :)
Wyrażenia można także ze sobą łączyć.
&& - Łącznik "i"
Pozwala na łączenie dwóch warunków ze sobą.
Aby wynik był prawdą, oba warunki składowe muszą być prawdą.
|| - Łącznik "lub"
Pozwala na łączenie dwóch warunków ze sobą.
Aby wynik był prawdą, przynajmniej jeden z warunków składowych musi być prawdą.
Przykłady
if ( (1 == 1) && (10 <= 1) ) {
// jakiś kod
}
Czy wyrażenie pierwsze ma wartość true? Już wiemy, że tak.
Czy drugie wyrażenie ma wartość true? Niestety nie.
Operator&&da nam true tylko w przypadku kiedy obie wartości mają wartość true, więc całe powyższe wyrażenie będzie miało wartość false.
if ( (1 == 1) || (10 <= 1) ) {
// jakiś kod
}
Tutaj ten sam przykład z taką różnicą, że do łączenia warunków użyliśmy operatora||.
Operator||da nam true w przypadku, gdy przynajmniej jedna z wartości będzie miała wartość true. W tym przypadku już pierwsze jest prawdziwe, więc mamy pewność, że całe wyrażenie będzie miało wartość true.
Kiedy już pierwsza wartość jest true, drugie wyrażenie nie jest sprawdzane, bo niezależnie od jego wartości, całość już jest spełniona.