Clojure Predicates

2018-12-23 17:37 更新

Predicates是評估條件并提供true或false值的函數(shù)。 我們已經(jīng)在數(shù)字一章的例子中看到了Predicates函數(shù)。 我們已經(jīng)看到像“even?”這樣的函數(shù),用于測試數(shù)字是否為偶數(shù),或者“neg?”,用于測試數(shù)字是否大于零。 所有這些函數(shù)返回true或false值。

下面是 Clojure中Predicates的使用示例:

(ns clojure.examples.example
   (:gen-class))

;; This program displays Hello World
(defn Example []
   (def x (even? 0))
   (println x)
   
   (def x (neg? 2))
   (println x)
   
   (def x (odd? 3))
   (println x)
   
   (def x (pos? 3))
   (println x))
(Example)

以上示例將輸出以下結(jié)果:

true
false
true
true

除了正常的Predicates函數(shù),Clojure還為Predicates提供了更多的函數(shù)。 以下方法可用于Predicates:

S.No.方法和說明
every-pred采用一組Predicates,并返回一個函數(shù)'f',如果所有的組合Predicates對其所有參數(shù)返回一個邏輯真值,則返回true,否則返回false。
every如果Predicates對于每個值為true,則返回true,否則返回false。
some返回值集合中任何Predicates值x的第一個邏輯真值。
not-any如果集合中的值的任何Predicates在邏輯上為真,則返回false,否則為true。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號