Clojure - 數字



Clojure 中的數字資料型別派生自 Java 類。

Clojure 支援整數和浮點數。

  • 整數是不包含小數部分的值。

  • 浮點數是包含小數部分的十進位制值。

以下是 Clojure 中數字的示例。

(def x 5)
(def y 5.25)

其中 ‘x’ 為整數型別,‘y’ 為浮點數型別。

在 Java 中,以下類與 Clojure 中定義的數字相關聯。

Numbers

為了實際看到 Clojure 中的數字是從 Java 類派生的,可以使用以下程式檢視使用 ‘def’ 命令時分配的數字的型別。

示例

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

;; This program displays Hello World
(defn Example []
   (def x 5)
   (def y 5.25)
   (println (type x))
   (println (type y)))
(Example)

‘type’ 命令用於輸出與分配給變數的值關聯的類。

輸出

以上程式碼將產生以下輸出。

Java.lang.long
Java.lang.double

數字測試

以下測試函式可用於數字。

序號 數字和描述
1 zero?

如果數字為零,則返回 true,否則返回 false。

2 pos?

如果數字大於零,則返回 true,否則返回 false。

3 neg?

如果數字小於零,則返回 true,否則返回 false。

4 even?

如果數字為偶數,則返回 true;如果數字不是整數,則丟擲異常。

5 odd?

如果數字為奇數,則返回 true;如果數字不是整數,則丟擲異常。

6 number?

如果數字確實是數字,則返回 true。

7 integer?

如果數字是整數,則返回 true。

8 float?

如果數字是浮點數,則返回 true。

廣告