logo

Operator trójskładnikowy Java z przykładami

Operatorzy stanowią podstawowy element składowy każdego języka programowania. Java udostępnia wiele typów operatorów, których można używać w zależności od potrzeb wykonywania różnych obliczeń i funkcji, czy to logicznych, arytmetycznych, relacyjnych itp. Są one klasyfikowane na podstawie zapewnianej przez nie funkcjonalności. Oto kilka typów:

  1. Operatory arytmetyczne
  2. Operatory jednoargumentowe
  3. Operator przypisania
  4. Operatorzy relacyjni
  5. Operatory logiczne
  6. Operator trójskładnikowy
  7. Operatory bitowe
  8. Operatorzy zmian

W tym artykule wyjaśniono wszystko, co trzeba wiedzieć na temat operatorów trójskładnikowych.



Operator trójskładnikowy w Javie

Operator trójskładnikowy Java jest jedynym operatorem warunkowym, który przyjmuje trzy operandy. Jest to jednowierszowy zamiennik instrukcji if-then-else i jest często używany w programowaniu w języku Java. Możemy używać operatora trójskładnikowego zamiast warunków if-else lub nawet przełączać warunki za pomocą zagnieżdżonych operatorów trójskładnikowych. Chociaż działa według tego samego algorytmu, co w przypadku instrukcji if-else, operator warunkowy zajmuje mniej miejsca i pomaga pisać instrukcje if-else w możliwie najkrótszy sposób.

Operator trójskładnikowy w Javie


Składnia:



variable = Expression1 ? Expression2: Expression3>

If działa podobnie jak instrukcja if-else, jak w Wyrażenie2 jest wykonywany, jeśli Wyrażenie 1 jest prawdą, że jest inaczej Wyrażenie 3 jest wykonywany.

if(Expression1) {  variable = Expression2; } else {  variable = Expression3; }>

Przykład:

num1 = 10; num2 = 20;  res=(num1>liczba2)? (num1+num2):(num1-num2) Od num1 wykonywana jest druga operacja res = num1-num2 = -10>

Schemat blokowy operacji trójskładnikowej

Schemat blokowy dla operatora trójskładnikowego



Przykłady operatorów trójskładnikowych w Javie

Przykład 1:

Poniżej znajduje się implementacja operatora trójskładnikowego:

Jawa
// Java program to find largest among two // numbers using ternary operator import java.io.*; class Ternary {  public static void main(String[] args)  {  // variable declaration  int n1 = 5, n2 = 10, max;  System.out.println('First num: ' + n1);  System.out.println('Second num: ' + n2);  // Largest among n1 and n2  max = (n1>n2)? n1: n2;  // Wypisz największą liczbę System.out.println('Maksimum to = ' + max);  } }>

Wyjście
First num: 5 Second num: 10 Maximum is = 10>

Złożoność powyższej metody:

Złożoność czasowa: O(1)
Przestrzeń pomocnicza: O(1)

Przykład 2:

Poniżej implementacja powyższej metody:

typy danych Java
Jawa
// Java code to illustrate ternary operator import java.io.*; class Ternary {  public static void main(String[] args)  {  // variable declaration  int n1 = 5, n2 = 10, res;  System.out.println('First num: ' + n1);  System.out.println('Second num: ' + n2);  // Performing ternary operation  res = (n1>n2)? (n1 + n2): (n1 - n2);  // Wydrukuj największą liczbę System.out.println('Result = ' + res);  } }>

Wyjście
First num: 5 Second num: 10 Result = -5>

Złożoność powyższej metody:

Złożoność czasowa: O(1)
Przestrzeń pomocnicza: O(1)

Przykład 3:

Implementacja operatora trójskładnikowego na wartościach logicznych:

Jawa
// Java Program for Implementing  // Ternary operator on Boolean values // Driver Class public class TernaryOperatorExample {  // main function  public static void main(String[] args)  {  boolean condition = true;  String result = (condition) ? 'True' : 'False';    System.out.println(result);  } }>

Wyjście
True>

Wyjaśnienie powyższej metody:

W tym programie zadeklarowano warunek zmiennej logicznej i przypisano mu wartość true. Następnie operator trójskładnikowy służy do określenia wartości ciągu wynikowego. Jeśli warunek jest prawdziwy, wynik będzie miał wartość True, w przeciwnym razie będzie to False. Na koniec wartość wyniku jest drukowana na konsoli.

Zalety operatora trójskładnikowego Java

  • Ścisłość : Operator trójskładnikowy umożliwia pisanie prostych instrukcji if-else w znacznie bardziej zwięzły sposób, dzięki czemu kod jest łatwiejszy do odczytania i utrzymania.
  • Poprawiona czytelność : Przy prawidłowym użyciu operator trójskładnikowy może uczynić kod bardziej czytelnym, ułatwiając zrozumienie intencji stojącej za kodem.
  • Zwiększona wydajność: Ponieważ operator trójskładnikowy ocenia pojedyncze wyrażenie zamiast wykonywać cały blok kodu, może być szybszy niż równoważna instrukcja if-else.
  • Uproszczenie zagnieżdżonych instrukcji if-else: Operator trójskładnikowy może uprościć złożoną logikę, zapewniając przejrzysty i zwięzły sposób wykonywania przypisań warunkowych.
  • Łatwe do debugowania : Jeśli wystąpi problem z kodem, operator trójskładnikowy może ułatwić identyfikację przyczyny problemu, ponieważ zmniejsza ilość kodu, który należy sprawdzić.

Warto zauważyć, że operator trójskładnikowy nie zastępuje wszystkich instrukcji if-else. W przypadku złożonych warunków lub logiki zwykle lepiej jest użyć instrukcji if-else, aby uniknąć utrudnienia zrozumienia kodu.