Mikä on kolmikantainen vai ehdollinen operaattori Rubyssa?

ternäärisen (tai ehdollinen) operaattori arvioi lausekkeen ja palauttaa yhden arvon, jos se on totta, ja toisen arvon, jos se on väärä. Se on vähän kuin lyhyt, kompakti, jos lausunto.

Rubyn kolmiosaisella operaattorilla on käyttötarkoituksensa, mutta se on myös hieman kiistanalainen.

Ternaarioperaattorin esimerkki

Katsotaanpa tätä esimerkkiä:

Ehdollista operaattoria käytetään tässä valitsemaan kahden merkkijonon välillä. Koko operaattorilauseke on kaikki, mukaan lukien ehdolliset, kysymysmerkki, kaksi merkkijonoa ja kaksoispiste. Tämän ilmaisun yleinen muoto on seuraava: ehdollinen? totta: väärä.

Jos ehdollinen lauseke on totta, niin operaattori arvioi todelliseksi lausekkeeksi. Muutoin se arvioidaan vääriksi lausekkeiksi. Tässä esimerkissä se on suluissa, joten se ei häiritse sitä ympäröivien merkkijonojen ketjutusoperaattoreita.

Toisin sanoen, ehdollinen operaattori on kuin jos lausuma. Muista se jos lausuntoja kaupungissa Ruby arvioi viimeiseksi suoritetun lohkon arvoksi. Joten voit kirjoittaa edellisen esimerkin uudelleen seuraavasti:

instagram viewer

Tämä koodi on toiminnallisesti sama ja ehkä hieman helpompi ymmärtää. Jos minä on suurempi kuin 10, jos lause itse arvioi merkkijonoksi "suurempi kuin" tai arvioi merkkijonoksi "pienemmäksi kuin" ". Tämä on sama asia, jota kolmiosainen operaattori tekee, vain kolmiosainen operaattori on enemmän kompakti.

Käyttötarkoitukset ternaarioperaattorille

Joten, mitä käyttötarkoituksia kolmiosaisella operaattorilla on? Sillä on käytöksiä, mutta niitä ei ole paljon, ja voisit pärjätä hyvin ilman sitä.

Sitä käytetään yleensä kengänkiinnitykseen arvoissa, joissa ehdoilla olisi liian tilaa. Sitä käytetään myös muuttuvassa määrityksessä valitaksesi nopeasti kahden arvon välillä.

Tässä on kaksi tyypillistä käyttötapausta, jotka näet kolmiosaisella operaattorilla:

Olet ehkä huomannut, että tämä näyttää melko epä-Ruby. Monimutkaiset lausekkeet eivät vain kuulu yhdelle riville Rubyssa - se on yleensä hajotettu ja helpompi lukea. Näet kuitenkin tämän operaattorin, ja sitä voidaan käyttää tehokkaasti ilman, että pääset käsistä.

Yksi noudatettava sääntö on, että jos käytät tätä operaattoria valitaksesi kahden arvon välillä yksinkertaisella ehdollisella, se on OK käyttää. Jos teet jotain monimutkaisempaa, sinun pitäisi todennäköisesti käyttää jos lausunto sen sijaan.

instagram story viewer