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"