Ruby教學 - Nil, True和False
1. NilClass
1.1 語法
其他程式語言中的空值(Null)在Ruby使用nil來表示:
value = nil p value # nil
1.2 判斷
Ruby中的物件都只和自己相等,所以即使是和false和0也和nil不相等,如下結果
puts nil == nil # true puts nil == false # false puts nil == 0 # false
另外Object提供一個內建函數nil?用來判斷物件是否為nil,只有nil會回傳true
puts nil.nil? # true puts false.nil? # false puts 0.nil? # false
1.3 轉型
由於Ruby所有東西都是物件,包含nil,所以和其它語言不同之處,它可以進行其他操作,例如呼叫轉型的函式:
p nil.to_s # "" p nil.to_i # 0 p nil.to_a # [] p nil.to_h # {}, Ruby 2.0 之前會出錯
2. TrueClass和FalseClass
2.1 語法
使用true或false來表示:
value = true p value # true value = false p value # false
2.2 判斷
一樣只和自己相等,以true為例:
value = "true" if value == true puts "if value == true" # 不執行 end if value puts "if value" # if value end
2.3 轉型
只能轉成字串:
p true.to_s # "true" p false.to_s # "false"