Ruby中的三元(條件)運(yùn)算符是什么?

三元(or條件)運(yùn)算符將評(píng)估一個(gè)表達(dá)式,如果它's true,則返回一個(gè)值,如果它's false,則返回另一個(gè)值。它'有點(diǎn)像速記,緊湊的if語句。

Ruby's三元運(yùn)算符有其用途,但它's也有點(diǎn)爭(zhēng)議。

三元運(yùn)算符示例秋季健康小知識(shí)

讓我們看看這個(gè)例子:

在這里,條件運(yùn)算符用于在兩個(gè)字符串之間進(jìn)行選擇。整個(gè)運(yùn)算符表達(dá)式都包括條件,問號(hào),兩個(gè)字符串和冒號(hào)。該表達(dá)式的一般格式如下:有條件的?真:假

如果條件表達(dá)式為真,則操作員將評(píng)估為真表達(dá)式。否則,它將被評(píng)估為虛假表達(dá)。在這個(gè)例子中,它在括號(hào)中's,所以它不會(huì)'t干擾它周圍的字符串連接運(yùn)算符。

換句話說,條件運(yùn)算符就像if語句。請(qǐng)記住,Ruby中的if語句會(huì)評(píng)估到要執(zhí)行的塊中的最后一個(gè)值。所以,你可以重寫前面的例子:

這個(gè)代碼在功能上是等價(jià)的,也許更容易理解。如果i大于10,If語句本身將對(duì)字符串進(jìn)行評(píng)估"大于"或者將對(duì)字符串進(jìn)行評(píng)估"小于或等于。"這與三元運(yùn)算符正在做的事情相同,只有三元運(yùn)算符更緊湊。

用于三元運(yùn)算符

那么,三元運(yùn)算符有什么用途?它確實(shí)有用途,但有'很多,沒有它你可以相處得很好。

它'通常用于在條件太大的情況下顯示值。It's也用于變量分配以快速選擇n兩個(gè)值。

以下是三元運(yùn)算符的兩個(gè)典型用例:

你可能已經(jīng)注意到這看起來非常不紅寶石。復(fù)雜表達(dá)式只屬于Ruby中的一行-it's通常被拆分并易于閱讀。但是,您會(huì)看到這個(gè)操作員,它可以在不失控的情況下有效使用。

要遵循的一個(gè)規(guī)則是,如果您'使用此運(yùn)算符在具有簡(jiǎn)單條件的兩個(gè)值之間進(jìn)行選擇,則可以使用它's。如果您'正在做更復(fù)雜的事情,則可能應(yīng)該使用If語句。