2012-06-13 53 views
3

clojure中是否有計算給定表達式的布爾值的函數?我的意思是如果表達式爲零或錯誤,那麼這個函數返回false,否則是真的?clojure中的表達式的布爾值

(to-bool nil) ; => false 
(to-bool false) ; => false 
(to-bool java.util.Date.) ; => true 
(to-bool true) ; => true 
(to-bool 7) ; => true 

這樣的事情?

回答

7

boolean它是。

(boolean nil) ; => false 
(boolean false) ; => false (I assume you expect false, not true here!) 
(boolean (java.util.Date.)) ; => true 
(boolean true) ; => true 
(boolean 7) ; => true 
+0

確切地說,我會編輯它,謝謝 – Sergey

-2

有兩個邏輯假Clojure中只:假的,爲零。

user=> (if false :true :false) 
:false 
user=> (if nil :true :false) 
:false 
user=> (if [] :true :false) 
:true 
user=> (if() :true :false) 
:true 
user=> (if #{} :true :false) 
:true 
user=> (if 1 :true :false) 
:true 
user=> (if 0 :true :false) 
:true 
user=> (if (java.util.Date.) :true :false) 
:true