3

与えられた式のブール値を計算するclojureの関数はありますか?つまり、式がnilまたはfalseの場合、この関数はfalseを返し、それ以外の場合はtrueを返しますか?

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

そんな感じ?

4

2 に答える 2

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
于 2012-06-13T10:16:28.923 に答える
-2

clojureにのみ2つの論理的なfalseがあります:false、nil。

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
于 2012-06-13T10:39:12.873 に答える