Operatory porównania w Javie służą do porównywania dwóch wartości lub obiektów. Wynikiem operacji porównania jest wartość logiczna true
lub false
, w zależności od tego, czy określone warunki są spełnione. Oto przegląd podstawowych operatorów porównania wraz z przykładami użycia.
Operator równości (==
)
Sprawdza, czy dwie wartości są równe. W przypadku obiektów, porównuje ich referencje, a nie faktyczne zawartości.
int a = 5;
int b = 5;
System.out.println(a == b); // Wynik: true
String x = new String("hello");
String y = new String("hello");
System.out.println(x == y); // Wynik: false, ponieważ różne referencje
Operator nierówności (!=
)
Sprawdza, czy dwie wartości są różne.
int a = 5;
int b = 6;
System.out.println(a != b); // Wynik: true
Operator większości (>
)
Sprawdza, czy wartość po lewej stronie jest większa niż wartość po prawej stronie.
int a = 10;
int b = 5;
System.out.println(a > b); // Wynik: true
Operator większości lub równości (>=
)
Sprawdza, czy wartość po lewej stronie jest większa lub równa wartości po prawej stronie.
int a = 5;
int b = 5;
System.out.println(a >= b); // Wynik: true
Operator mniejszości lub równości (<=
)
Sprawdza, czy wartość po lewej stronie jest mniejsza lub równa wartości po prawej stronie.
int a = 4;
int b = 5;
System.out.println(a <= b); // Wynik: true
Przykład użycia operatorów porównania:
int testScore = 76;
int passingScore = 75;
if (testScore >= passingScore) {
System.out.println("Gratulacje! Zdałeś.");
} else {
System.out.println("Niestety, nie zdałeś.");
}
W tym przykładzie, operator >=
jest używany do porównania wyniku testu z minimalną liczbą punktów potrzebną do zdania. Na tej podstawie podejmowana jest decyzja o wyświetleniu odpowiedniego komunikatu.
Uwagi
Podczas pracy z obiektami, takimi jak String
, do porównywania ich wartości zamiast operatorów porównania (==
, !=
) należy używać metod, takich jak equals()
lub compareTo()
, aby porównać faktyczne zawartości obiektów, a nie ich referencje.
String str1 = "OpenAI";
String str2 = "OpenAI";
System.out.println(str1.equals(str2)); // Wynik: true