Tässä artikkelissa opit C # kolmikomponenttioperaattorista ja siitä, miten sitä käytetään ohjelmavirran hallintaan.
Ternary-operaattori korvaa if… else -lausekkeen. Joten ennen kuin siirryt eteenpäin tässä opetusohjelmassa, käy läpi C # if … else -lauseke (jos et ole).
Kolmikomponenttisen syntaksin muoto on:
Kunnossa? Lauseke1: Lauseke2;
Kolmikertainen operaattori toimii seuraavasti:
- Jos lauseke
Condition
ontrue
,Expression1
kolminkertainen operaattori palauttaa tuloksen . - Jos on
false
, tulosExpression2
palautetaan.
Esimerkiksi voimme korvata seuraavan koodin
if (luku% 2 == 0) (isEven = true;) else (isEven = false;)
kanssa
isEven = (luku% 2 == 0)? true: väärä;
Miksi sitä kutsutaan kolmikantaiseksi operaattoriksi?
Tämä operaattori ottaa 3 operandia , jota kutsutaan ternääriseksi operaattoriksi.
Esimerkki 1: C # Ternary Operator
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); ) ) )
Kun suoritamme ohjelmaa, tulos on:
Totta
Yllä olevassa ohjelmassa 2
on osoitettu muuttuvalle numerolle. Sitten kolminkertaista operaattoria käytetään tarkistamaan, onko numero parillinen vai ei.
Koska 2 on parillinen, lauseke ( number % 2 == 0
) palaa true
. Voimme myös käyttää kolmiportaista operaattoria numeroiden, merkkijonojen ja merkkien palauttamiseen.
Sen sijaan, että palautusarvo tallennettaisiin muuttujaan isEven, voimme tulostaa kolminkertaisen operaattorin palauttaman arvon seuraavasti:
Console.WriteLine ((numero% 2 == 0)? True: false);
Milloin käyttää kolmiportaista operaattoria?
Ternary-operaattoria voidaan käyttää korvaamaan useita koodirivejä yhdellä rivillä. Meidän ei kuitenkaan pitäisi käyttää sitä liikaa.
Esimerkiksi voimme korvata seuraavat, jos… muuten, jos koodi
jos (a> b) (tulos = "a on suurempi kuin b";) muuta jos (a <b) (tulos = "b on suurempi kuin a";) muu (tulos = "a on yhtä suuri kuin b";)
yhdellä koodirivillä
tulos = a> b? "a on suurempi kuin b": a <b? "b on suurempi kuin a": "a on yhtä suuri kuin b";
Kuten voimme nähdä, kolmikantaisen operaattorin käyttö voi lyhentää koodin pituutta, mutta se vaikeuttaa koodin logiikan ymmärtämistä.
Siksi on parempi käyttää vain kolminkertaista operaattoria korvaamaan yksinkertaiset jos muuten lauseet.