C # ternarni (? :) operater (s primerom)

V tem članku bomo spoznali ternarni operater C # in kako ga uporabiti za nadzor pretoka programa.

Ternarni operator je nadomestek stavka if … else. Torej, preden nadaljujete v tej vadnici, pojdite skozi izjavo C # if … else (če je niste).

Sintaksa ternarnega operatorja je:

Stanje? Izraz1: Izraz2;

Ternarni operater deluje na naslednji način:

  • Če je izraz, ki ga navedel Conditionje true, rezultat Expression1se vrne ternarnega operaterja.
  • Če je false, Expression2se vrne rezultat.

Na primer, lahko nadomestimo naslednjo kodo

 if (število% 2 == 0) (isEven = true;) else (isEven = false;) 

s

isEven = (število% 2 == 0)? pravilno napačno ;

Zakaj se imenuje ternarni operater?

Ta operater zavzame 3 operande , zato jih imenujemo trojni operater.

Primer 1: Ternarni operater C #

 using System; namespace Conditional ( class Ternary ( public static void Main(string() args) ( int number = 2; bool isEven; isEven = (number % 2 == 0) ? true : false ; Console.WriteLine(isEven); ) ) ) 

Ko zaženemo program, bo rezultat:

 Prav

V zgornjem programu 2je dodeljena spremenljivki. Nato se s ternarnim operatorjem preveri, ali je število sodo ali ne.

Ker je 2 sodo, se izraz ( number % 2 == 0) vrne true. Ternarni operator lahko uporabimo tudi za vrnitev številk, nizov in znakov.

Namesto da vrnemo vrednost v spremenljivko isEven, lahko vrednost, ki jo vrne ternarni operater, neposredno natisnemo kot,

 Console.WriteLine ((število% 2 == 0)? True: false);

Kdaj uporabiti ternarni operator?

Ternarni operator lahko uporabite za zamenjavo več vrstic kode z eno vrstico. Vendar je ne smemo pretiravati.

Na primer, lahko zamenjamo naslednjo if … else if kodo

 if (a> b) (result = "a je večji od b";) else if (a <b) (result = "b je večji od a";) else (result = "a je enak b";) 

z eno vrstico kode

rezultat = a> b? "a je večje od b": a <b? "b je večji od a": "a je enako b";

Kot lahko vidimo, lahko uporaba ternarnega operatorja zmanjša dolžino kode, vendar nam je težko razumeti logiko kode.

Zato je bolje uporabiti samo ternarni operator, da zamenja enostavne stavke if else.

Zanimive Članki...