Clojure - 变量

在 Clojure 中,变量'def' 关键字定义。 有点不同,其中变量的概念更多地与绑定有关。 在 Clojure 中,值绑定到变量。 Clojure 中需要注意的一件关键事情是变量是不可变的,这意味着为了更改变量的值,需要将其销毁并再次重新创建。

以下是 Clojure 中变量的基本类型。

  • short − 这用于表示短数字。 例如,10。

  • int − 这用于表示整数。 例如,1234。

  • long − 这用于表示一个长数字。 例如,10000090。

  • float − 这用于表示 32 位浮点数。 例如,12.34。

  • char − 这定义了单个字符文字。 例如,"/a"。

  • Boolean − 这代表一个布尔值,可以是 true 也可以是 false。

  • String − 这些是以字符链的形式表示的文本文字。 例如,"Hello World"。

变量声明

以下是定义变量的一般语法。

语法

(def var-name var-value)

其中"var-name"是变量的名称,"var-value"是绑定到变量的值。

示例

以下是变量声明的示例。

(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")
   
   ;; The below code declares a boolean variable
   (def status true))
(Example)

命名变量

变量名可以由字母、数字、下划线组成。 它必须以字母或下划线开头。 大小写字母是不同的,因为 Clojure 就像 Java 一样是区分大小写的编程语言。

示例

以下是 Clojure 中变量命名的一些示例。

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

;; This program displays Hello World
(defn Example []
   ;; The below code declares a Boolean variable with the name of status
   (def status true)
   
   ;; The below code declares a Boolean variable with the name of STATUS
   (def STATUS false)
   
   ;; The below code declares a variable with an underscore character.
   (def _num1 2))
(Example)

注意 − 在上面的语句中,由于区分大小写,status 和 STATUS 是 Clojure 中两个不同的变量定义。

上面的示例展示了如何定义带有下划线字符的变量。

打印变量

由于Clojure使用JVM环境,因此还可以使用'println'函数。 以下示例展示了如何实现这一点。

示例

(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