Operatory to symbole używane do wykonywania operacji na wartościach, zmiennych lub instrukcjach. Wyrażenia, na których wykonują te czynności, nazywane są operandami. Operacje zwracają wynik logiczny (prawda lub fałsz) dla operatorów relacyjnych, równości i logicznych.

Liczba operandów przyjmowanych przez operatora określa jego typ. Operator, który przyjmuje jeden operand, nazywa się „jednoargumentowym”. Operator, który przyjmuje dwa operandy, nazywa się „binarnym”.

Czytaj dalej, aby dowiedzieć się, jak używać operatorów logicznych i relacyjnych w Javie. Co więcej, większość języków programowania używa tych samych operatorów, więc możesz zastosować tę wiedzę w innym miejscu.

Operatory logiczne

Służą do budowania logicznych instrukcji podczas programowania. W Javie istnieje sześć operatorów logicznych. Poniższa tabela podsumowuje je.

Operator Nazwa Rodzaj
| logiczne OR Dwójkowy
& logiczne AND Dwójkowy
^ Logiczna wyłączność logiczna logicznego OR Dwójkowy
|| Warunkowe OR Dwójkowy
&& Warunkowe AND Dwójkowy
! Logiczne NIE Jednoargumentowy
instagram viewer

Jeśli chcesz sprawdzić, czy jeden lub oba warunki są spełnione, użyj tego operatora. Warunek to wyrażenie, które może być prawdziwe lub fałszywe.

Logiczna logiczna inkluzywna LUB (|)

Logiczne OR sprawdza, czy oba operandy są prawdziwe przed oceną wyrażenia.

jeśli ( ur. < 2005 | wzrost <= 5){
pieniądze++;
}

Powyższy przykład da komuś więcej pieniędzy, jeśli jego data urodzenia (ur. ur.) jest mniejsza niż 2005 lub jeśli jego wzrost jest mniejszy lub równy 5 stóp.

logiczne AND (&)

Ten operator służy do sprawdzania, czy oba warunki są spełnione przed wybraniem określonej ścieżki wykonania w programie. Najpierw sprawdza, czy oba warunki są spełnione przed oceną całego wyrażenia.

Związane z: Jak sprawdzać ciągi za pomocą metod logicznych w Pythonie?

Logiczna wyłączność logiczna LUB (^)

Jeśli chcesz sprawdzić, czy jeden z warunków jest spełniony, ale nie oba, to jest to operator, którego należy użyć. Poniższa tabela prawdy podsumowuje wyniki, które zobaczysz, gdy z niej skorzystasz.

wyrażenie1 wyrażenie2 wyrażenie1 ^ wyrażenie2
fałszywe fałszywe fałszywe
fałszywe prawdziwe prawdziwe
prawdziwe fałszywe prawdziwe
prawdziwe prawdziwe fałszywe

Warunkowe AND (&&)

Ten operator jest podobny do logicznego AND. Różnica polega na tym, że najpierw sprawdza, czy warunek po lewej stronie jest spełniony, zanim przejdzie do sprawdzenia tego po prawej.

Jeśli lewa część okaże się fałszywa, wykonanie zostanie natychmiast przerwane. W przeciwnym razie ocena właściwej części będzie kontynuowana. Ta funkcja jest znana jako ocena zwarcia.

Zapoznaj się z poniższą tabelą prawdy, aby uzasadnić zrozumienie tego operatora.

wyrażenie1 wyrażenie2 wyrażenie1 && wyrażenie2
fałszywe fałszywe fałszywe
fałszywe prawdziwe fałszywe
prawdziwe fałszywe fałszywe
prawdziwe prawdziwe prawdziwe

Warunkowe LUB (||)

Jeśli którykolwiek z warunków jest fałszywy, wykonanie przejdzie do następnej części programu. Innymi słowy, oba warunki muszą być prawdziwe.

Ten operator jest podobny do logicznego OR. Sprawdza również, czy jeden lub oba warunki są spełnione przed wykonaniem określonego kodu.

Podobnie jak w przypadku warunkowego AND, logiczne OR również wykorzystuje ocenę zwarcia. Najpierw sprawdza, czy operand po lewej stronie jest prawdziwy, zanim oceni operand po prawej stronie.

Związane z: Co to jest konstruktor w Javie i jak go używać?

Jeśli warunek po lewej stronie okaże się spełniony, nie ma potrzeby sprawdzania tego po prawej. W przeciwnym razie ocena po prawej będzie kontynuowana.

Logiczne NIE (!)

Ten operator służy do zanegowania warunku. Po prostu odwraca znaczenie tego, na czym operuje.

jeśli(!(x>5)){
// sprawozdania
}

Powyższe stwierdzenie oznacza, że ​​jeśli "x jest większe niż 5" NIE jest prawdziwe, wykonaj instrukcje wewnątrz inside gdyby.

Zwróć uwagę na użycie nawiasów okrągłych z wyrażeniem (x>5). Jeśli nie uwzględnisz tych nawiasów podczas pisania programu, otrzymasz błąd podczas kompilacji. Powodem jest to, że ! jest operatorem jednoargumentowym, który działa na warunku. Bez nawiasów kompilator zinterpretowałby to jako operator działający na x, a nie x>5.

Włączenie nawiasów nie służy tylko do umożliwienia kompilatorowi poprawnej interpretacji wyrażenia. Mogą być również używane jako sposób na lepsze zrozumienie przez programistę bardziej złożonych wyrażeń. Spójrz na poniższy przykład:

wiek >= 7 i wzrost < 5

Niektórym ludziom może być trudno podążać za logiką. Dlatego niektórzy programiści wolą dodawać nadmiarowe nawiasy ze względu na czytelność:

(wiek >= 7) && (wzrost < 5)

Operatorzy relacyjni

Operatory te służą do porównywania prostych relacji między operandami.

Operator Nazwa
> Lepszy niż
< Mniej niż
>= Większe bądź równe
<= Mniejszy lub równy

Operatory relacyjne są dość łatwe do zrozumienia, ponieważ wszystkie mają to samo znaczenie, co zwykłe operatory algebraiczne, które już znasz. To jest do powiedzenia, > i < mają to samo znaczenie, które już znasz, jak podane w powyższej tabeli.

jeśli ( x <= 7 ) {
x++;
}

Powyższe gdyby instrukcja sprawdza, czy x jest mniejsze lub równe 7. Jeśli prawda, instrukcje w nawiasach są wykonywane, w przeciwnym razie nie.

Teraz byłby dobry moment, by wspomnieć o operatorach równości. Są tylko dwa z nich ( równe, == i !=, nie równe ). Jak sugeruje ich nazwa, służą one do testowania równości między dwoma operandami.

Związane z: Jak tworzyć i wykonywać operacje na tablicach w Javie

Operatora równości (==) nie należy mylić z operatorem przypisania (=). Początkujący programiści lubią mieszać te dwie rzeczy. Jest to rozsądne, ponieważ w algebrze symbol (=) służy do wyrażenia równości. Jednak to nie jest właściwe w programowaniu.

Operator przypisania (=) przypisuje wartość do zmiennej, podczas gdy operator równości (==) sprawdza równość. Zobacz poniższy przykład, aby zrozumieć różnicę:

jeśli (x=5){
// sprawozdania
}

Powyższy kod będzie zawsze wykonywany niezależnie od tego, czy x jest faktycznie równe 5. Tymczasem poniższy kod zostanie wykonany tylko wtedy, gdy x jest równe 5. Dlatego ważne jest, aby nie pomylić tych dwóch.

jeśli (x==5){
// sprawozdania
}

Dwa wymienione operatory równości mają ten sam poziom pierwszeństwa, choć niższy niż operatory relacyjne.

Operatory relacyjne mają również ten sam poziom pierwszeństwa. Wykonanie tych operatorów rozpoczyna się od lewej do prawej.

Dalsze rozważania na temat operatorów Java

Musiałeś zauważyć, że w niektórych przykładach między niektórymi operatorami i ich operandami jest odstęp, podczas gdy w innych nie ma.

Brak/obecność tej przestrzeni nie powinna Cię martwić. Kompilator to zignoruje. Dlatego poniższe wyrażenia oznaczają to samo:

Y>=7 // brak spacji
Y >= 7 // z białymi znakami

Operatory relacyjne są zwykle używane do wyrażania prostych warunków. Aby połączyć proste warunki w bardziej złożone, będziesz musiał użyć operatorów logicznych. Operatory logiczne mogą testować wiele warunków, w przeciwieństwie do operatorów relacyjnych, które testują tylko jeden warunek.

Należy również zauważyć, że operatory logiczne ( |, &, ^) mogą być operatorami bitowymi, jeśli mają integralne operandy. Gdy są używane jako operatory bitowe, będą operować na bitach swoich operandów.

Mając taką wiedzę na temat operatorów, powinieneś teraz przygotowywać się do nauki klas Java.

E-mail
Dowiedz się, jak tworzyć klasy w Javie

Jeśli uczysz się programować w Javie, musisz wiedzieć, jak tworzyć klasy.

Czytaj dalej

Powiązane tematy
  • Programowanie
  • Jawa
  • Poradniki kodowania
O autorze
Jerome Davidson (9 opublikowanych artykułów)

Jerome jest pisarzem sztabowym w MakeUseOf. Zajmuje się artykułami na temat programowania i Linuksa. Jest także entuzjastą kryptowalut i zawsze śledzi branżę kryptograficzną.

Więcej od Jerome'a ​​Davidsona

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Jeszcze jeden krok…!

Potwierdź swój adres e-mail w e-mailu, który właśnie do Ciebie wysłaliśmy.

.