Operatory logiczne | Kurs Java

Operatory logiczne

Operatory logiczne działają na wartościach logicznych (typ boolean) i same zwracają wartość logiczną, realizując podstawowe operacje algebry Boole’a.

Argumenty operatorów wyliczane są zawsze od lewej do prawej strony. Wyliczenie wartości drugiego operatora może zostać pominięte, jeżeli na podstawie pierwszego można określić wynik całej operacji.

Negacja !

Negację, czyli zaprzeczenie, można tłumaczyć jako “nieprawda, że”. W Javie do jej prezentacji wykorzystywany jest operator znaku wykrzyknika !.

value!value
truefalse
falsetrue

Prawo podwójnego przeczenia

Podwójne przeczenie zeruje się i wartość pozostaje bez zmian.

true == !!true

Koniunkcja &&

Operator koniunkcji przyjmuje dwa argumenty typu boolean i również zwraca typ boolean. Można go przetłumaczyć jako zdanie, że koniunkcja jest prawdziwa wtedy i tylko wtedy, gdy oba jej argumenty są prawdą. Koniunkcja nazywana jest też iloczynem logicznym.

value1value2value1 && value2
falsefalsefalse
falsetruefalse
truefalsefalse
truetruetrue

Alternatywa ||

Alternatywa, czyli suma logiczna, jest prawdziwa, jeżeli chociaż jeden z jej argumentów jest prawdziwy.

value1value2value1 || value2
falsefalsefalse
falsetruetrue
truefalsetrue
truetruetrue

W przeciwieństwie do koniunkcji, w alternatywie może zdarzyć się, że jej drugi argument nie zostanie wyliczony. Argumenty zawsze wyliczane są od lewego do prawego. Jeżeli pierwszy będzie prawdą, to niezależnie od wyniku drugiego, całe wyrażenie również zwróci prawdę, dlatego w celach optymalizacyjnych Java pomija wyliczanie drugiego argumentu. Jeżeli drugi argument będzie metodą i nie zostanie ona wywołana, może to prowadzić do ciężkich do wykrycia błędów, dlatego nie powinno się uzależniać swojego kodu od jej wykonania.

Alternatywa rozłączna (XOR) !=

Alternatywa rozłączna jest operatorem o wyjątkowo wielu nazwach. Bywa również określana jako alternatywa wykluczająca, różnica symetryczna, suma poprzeczna, suma modulo 2, kontrawalencja, XOR, Exclusive OR i EOR.

Można ją przetłumaczyć jako: albo to, albo tamto, czyli jej argumenty muszą być różne, żeby całe wyrażenie zwróciło prawdę.

value1value2value1 != value2
falsefalsefalse
falsetruetrue
truefalsetrue
truetruefalse

Równoważność ==

Równoważność jako wyrażenie jest poprawne, jeżeli oba jej argumenty są identyczne, czyli albo oba są prawdą, albo oba fałszem.

value1value2value1 == value2
falsefalsetrue
falsetruefalse
truefalsefalse
truetruetrue

Programista – Pytania rekrutacyjne

Lista pytań rekrutacyjnych, które pozwolą przygotować Ci się na rozmowę kwalifikacyjną.

2 komentarze
Share:

2 Comments

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *