第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

Ruby 布爾對象

本章節(jié)我們學(xué)習(xí)布爾值,了解什么是布爾值,在 Ruby 中布爾值的基本用法。

1. 什么是布爾值

布爾值是 True 或 False 中的一個(gè)。動作腳本也會在適當(dāng)時(shí)將值 True 和 False 轉(zhuǎn)換為 1 和 0。布爾值經(jīng)常與動作腳本語句中通過比較控制腳本流的邏輯運(yùn)算符一起使用?!俜蕉x

布爾值代表著真和假,在代碼上,通常顯示為truefalse。

2. 在 Ruby 中使用布爾值

在 Ruby 中布爾值是一個(gè)特殊的對象。它由兩個(gè)類組成,分別為TrueClassFalseClass。他們兩個(gè)類分別只有一個(gè)唯一的實(shí)例,為truefalse。

實(shí)例:

> true.class 
=> TrueClass
false.class
=> FalseClass

解釋:在 Ruby 中,每一個(gè)對象擁有可以查看自己所屬類的方法,名為class,從上述的實(shí)例中我們看到,truefalse分別屬于TrueClassFalseClass兩個(gè)類。

注意事項(xiàng):在 Ruby 中nil表示空,所有對象都可以轉(zhuǎn)成布爾值,只有falsenil才真的是false,其他的均為true,即便是 0。這部分內(nèi)容在條件語句中會給出具體例子。

經(jīng)驗(yàn):當(dāng)返回的方法是布爾值的時(shí)候,要使用?作為方法的結(jié)尾,這個(gè)要當(dāng)做是Ruby代碼的編寫規(guī)范。方法的定義稍后會在Ruby的方法章節(jié)具體給出例子。我們統(tǒng)稱這種結(jié)尾帶問號的方法為布爾方法。

實(shí)例:

# 判斷123是空嗎?
> 123.nil?
=> false

# 判斷字符串daadsasd是否內(nèi)部定義了downcase方法
> "daadsasd".respond_to?("downcase!")
=> true

3. 邏輯運(yùn)算符

在 Ruby 中我們在執(zhí)行一些復(fù)雜的判斷的時(shí)候會使用到邏輯運(yùn)算符(也就是與、或、非),具體的表格如下:

運(yùn)算符 時(shí)機(jī)簡介(調(diào)用的時(shí)機(jī)) 例子
and 當(dāng)左右都為true的時(shí)候才為true true and true => true
&& 當(dāng)左右都為true的時(shí)候才為true true && true => true
or 當(dāng)左右存在一個(gè)true的時(shí)候就為true true or false => true
|| 當(dāng)左右存在一個(gè)true的時(shí)候就為true true || false => true
not true變?yōu)閒alse,false變?yōu)閠rue True
! true變?yōu)閒alse,false變?yōu)閠rue ! false => true

邏輯運(yùn)算符中,非的優(yōu)先級最大,與和或的優(yōu)先級相同,自左向右運(yùn)行。

實(shí)例:

> true || false and !false
=> true

如果想要自定義組合條件,需要使用括號()

實(shí)例:

> (false || false) && (false || true)
=> false

> false || false && false || true
=> true

Ruby 條件語句章節(jié)學(xué)習(xí)后,邏輯運(yùn)算符才會大展身手。在今后接手的每一個(gè)項(xiàng)目之中,都會充斥著無數(shù)的邏輯運(yùn)算。

4. 小結(jié)

本章中我們了解了什么是布爾值,在 Ruby 中布爾值的 true 和 false 分別所屬 TrueClass 和 FalseClass。false和 nil 是真正的 false,而其他均為 true。知道了帶問號的方法只返回 true 或者 false 的約定規(guī)則。學(xué)習(xí)了與或非的邏輯運(yùn)算。