
- Clojure 教程
- Clojure - 首頁
- Clojure - 概述
- Clojure - 環境
- Clojure - 基本語法
- Clojure - REPL
- Clojure - 資料型別
- Clojure - 變數
- Clojure - 運算子
- Clojure - 迴圈
- Clojure - 決策
- Clojure - 函式
- Clojure - 數字
- Clojure - 遞迴
- Clojure - 檔案I/O
- Clojure - 字串
- Clojure - 列表
- Clojure - 集合
- Clojure - 向量
- Clojure - 對映
- Clojure - 名稱空間
- Clojure - 異常處理
- Clojure - 序列
- Clojure - 正則表示式
- Clojure - 謂詞
- Clojure - 解構
- Clojure - 日期和時間
- Clojure - 原子
- Clojure - 元資料
- Clojure - StructMaps
- Clojure - Agents
- Clojure - 觀察者
- Clojure - 宏
- Clojure - 引用值
- Clojure - 資料庫
- Clojure - Java 介面
- Clojure - 併發程式設計
- Clojure - 應用
- Clojure - 自動化測試
- Clojure - 庫
- Clojure 有用資源
- Clojure - 快速指南
- Clojure - 有用資源
- Clojure - 討論
Clojure - 資料型別
Clojure 提供了各種各樣的內建資料型別。
內建資料型別
以下是 Clojure 中定義的資料型別列表。
整數 − 以下是 Clojure 中可用的整數表示。
十進位制整數(短整型、長整型和整型) − 用於表示整數。例如,1234。
八進位制數 − 用於表示八進位制數。例如,012。
十六進位制數 − 用於表示十六進位制數。例如,0xff。
基數數字 − 用於表示基數表示的數字。例如,2r1111,其中基數是介於 2 和 36(含)之間的整數。
浮點數
預設情況下,用於表示32位浮點數。例如,12.34。
另一種表示法是科學計數法。例如,1.35e-12。
字元 − 定義單個字元字面量。字元用反斜槓符號定義。例如,\e。
布林值 − 表示布林值,可以是真或假。
字串 − 文字字面量,以字元鏈的形式表示。例如,“Hello World”。
Nil − 用於表示 Clojure 中的 NULL 值。
原子 − 原子提供了一種管理共享的、同步的、獨立狀態的方法。它們與 refs 和 vars 一樣是一種引用型別。
繫結值
由於 Clojure 中的所有資料型別都繼承自 Java,因此繫結值與 Java 程式語言中的相同。下表顯示數值和十進位制字面量的最大允許值。
字面量 | 範圍 |
---|---|
短整型 | -32,768 到 32,767 |
整型 | -2,147,483,648 到 2,147,483,647 |
長整型 | -9,223,372,036,854,775,808 到 +9,223,372,036,854,775,807 |
單精度浮點數 | 1.40129846432481707e-45 到 3.40282346638528860e+38 |
雙精度浮點數 | 4.94065645841246544e-324d 到 1.79769313486231570e+308d |
類數值型別
除了基本型別外,還允許使用以下物件型別(有時稱為包裝型別)。
名稱 |
---|
java.lang.Byte |
java.lang.Short |
java.lang.Integer |
java.lang.Long |
java.lang.Float |
java.lang.Double |
示例
下面的程式顯示了演示 Clojure 中資料型別的綜合 Clojure 程式碼。
(ns clojure.examples.hello (:gen-class)) ;; This program displays Hello World (defn Example [] ;; The below code declares a integer variable (def x 1) ;; The below code declares a float variable (def y 1.25) ;; The below code declares a string variable (def str1 "Hello") (println x) (println y) (println str1)) (Example)
輸出
上述程式產生以下輸出。
1 1.25 Hello
廣告