2015-03-25 32 views
0

爲什麼所有的真,數字,浮點數和字符串在檢查條件時是否變爲真,除了假?例子:爲什麼一切都變得真實,如果條件是假的?

puts "Hello World" if 0 # => Hello World 
puts "Hello World" if 1 # => Hello World 
puts "Hello World" if 2 # => Hello World 
puts "Hello World" if 200 # => Hello World 
puts "Hello World" if "Ruby" # => Hello World 
puts "Hello World" if "Rails" # => Hello World 
puts "Hello World" if true # => Hello World 

puts "Hello World" if false # => nil 
+0

你的假設是錯誤的。並非如此,除「假」之外的所有內容都被評估爲真實。 – sawa 2015-03-25 06:13:27

+0

https://gist.github.com/jfarmer/2647362 – locriani 2015-03-25 06:14:11

+0

@sawa對不起,它的錯字。修正了 – Shan 2015-03-25 06:18:57

回答

5

一切都計算爲在Ruby中true除了falsenil

PS:這裏沒有隱藏的目標,它只是一種語言設計選擇。

相關問題