Swift trójskładnikowy operator warunkowy (z przykładami)

W tym artykule dowiesz się, jak używać operatora warunkowego lub trójskładnikowego do zmiany przepływu sterowania w programie.

Trójargumentowy operator warunkowy "? :"jest skrótem dla instrukcji if-else.

Składnia trójargumentowego operatora warunkowego jest następująca:

stan: schorzenie ? wartość1: wartość2

Jak działa trójskładnikowy operator warunkowy?

Oto jak to działa

  • Jeśli warunek jest prawdziwy, zwraca wartość1.
  • Jeśli warunek jest fałszywy, zwraca wartość2.

Powyższy równoważny kod używający if - else to:

 jeśli warunek (wartość1) else (wartość2)

Dlaczego warto używać trójskładnikowego operatora warunkowego?

Możesz się zastanawiać, dlaczego powinniśmy używać operatora warunkowego, skoro działa on tak samo jak instrukcja if-else. Głównym celem jego używania jest skrócenie i zwiększenie czytelności kodu.

W przypadku prostych warunków możesz ocenić to w jednym wierszu z mniejszą ilością kodu niż if-else.

Przykład 1: Prosty przykład użycia trójskładnikowego operatora warunkowego

 print(true && false ? "The condition is true": "The condition is false")

Powyższy równoważny kod używający if - else to:

 if true && false ( print("The condition is true") ) else ( print("The condition is false") ) 

Po uruchomieniu powyższego programu wynik będzie:

 Warunek jest fałszywy

W powyższym programie wyrażenie ma true && falsewartość false, dlatego instrukcja zwraca łańcuch Warunek jest fałszywy, a instrukcja print zwraca łańcuch w konsoli.

Jeśli zmienisz wyrażenie w miarę, jak true || falseinstrukcja oblicza truei zwraca ciąg . Warunek jest prawdziwy, a instrukcja print wyświetla ciąg w konsoli.

Rzeczy do zapamiętania

Alternatywą dla if-else-ifinstrukcji może być także potrójny operator warunkowy .

Za pomocą trójskładnikowego operatora warunkowego można zastąpić wiele wierszy if-else-ifkodu jednym wierszem.

Jednak może to nie być dobry pomysł.

Przykład 2: Zagnieżdżone if else przy użyciu trójargumentowego operatora warunkowego

 if true && false ( print("Result is (true && false)") ) else if true || false ( print("Result is (true || false)") ) else if false || false ( print("Result is (false || false)") ) else ( print("Default else statement") ) 

Powyższy równoważny kod wykorzystujący trójskładnikowy operator warunkowy to:

 print(true && false ? "Result is (true && false)" : true || false ? "Result is (true || false)" : false || false ? "Result is (false || false)" : "The condition is unknown")

Po uruchomieniu powyższych programów oba wyniki będą:

 Wynik jest prawdziwy

W powyższych programach, mimo że instrukcje of if-else-ifzastępowane są pojedynczym wierszem przy użyciu operatora warunkowego. Wyrażenie użyte w potrójnym operatorze warunkowym jest naprawdę trudne do zrozumienia.

Więc po prostu trzymaj się używania trójskładnikowego operatora warunkowego jako alternatywy if-elsetylko dla instrukcji.

Interesujące artykuły...