📝 Clojure教程
41篇技术文档📅  最后修改于: 2020-11-05 03:55:26        🧑  作者: Mango
Clojure是一种高级的动态功能编程语言。它基于LISP编程语言进行设计,并具有可在Java和.Net运行时环境中运行的编译器。本教程相当全面,涵盖了Clojure涉及的各种功能。为了便于理解,使用示例对所有功能进行了说明。本教程适用于所有热衷于学习Clojure基础知识以及如何将其实践的软件专业人员。先决条件在继续本教程之前,应先熟悉Java和LISP编程语言。...
📅  最后修改于: 2020-11-05 03:55:44        🧑  作者: Mango
Clojure是一种高级的动态功能编程语言。 Clojure是基于LISP编程语言设计的,并具有使其能够在Java和.Net运行时环境上运行的编译器。在讨论Clojure之前,让我们简单介绍一下LISP编程语言。 LISP具有很小的语言核心,几乎没有语法和强大的宏功能。有了这些功能,您就可以弯曲LISP来满足您的设计要求,而不必反过来。 LISP早在1958年就已经存在。Common LISP读入...
📅  最后修改于: 2020-11-05 03:56:08        🧑  作者: Mango
使用Clojure作为编程语言有多种方法。我们将研究两种使用Clojure编程的方法。Leiningen-Leiningen是创建,构建和自动化Clojure项目的重要工具。Eclipse插件-有一个名为CounterClockwise的插件,可用于Eclipse在Eclipse IDE中进行Clojure开发。莱宁根安装在继续安装之前,请确保满足以下系统要求。系统要求JDKJDK 1.7 or ...
📅  最后修改于: 2020-11-05 03:56:57        🧑  作者: Mango
为了理解Clojure的基本语法,我们首先来看一个简单的Hello World程序。Hello World作为完整程序在完整的Clojure程序中编写“ Hello world”。以下是一个示例。例现场演示关于上述程序,需要注意以下几点。该程序将被写入一个名为main.clj的文件中。扩展名“ clj”是clojure代码文件的扩展名。在上面的示例中,文件名称为main.clj。关键字’defn’...
📅  最后修改于: 2020-11-05 03:57:19        🧑  作者: Mango
REPL(read-eval-print循环)是用于测试Clojure代码的工具。它使您可以与正在运行的程序进行交互,并快速尝试是否按预期进行。它通过提示您输入代码来实现。然后,它将读取您的输入,对其进行评估,打印结果,然后进行循环,再次向您显示提示。此过程可实现快速反馈周期,这在大多数其他语言中是不可能的。开始REPL会话可以在Leiningen中启动REPL会话,方法是在命令行中键入以下命令。...
📅  最后修改于: 2020-11-05 03:57:42        🧑  作者: Mango
Clojure提供了多种内置数据类型。内置数据类型以下是Clojure中定义的数据类型的列表。整数-以下是Clojure中可用的整数表示。十进制整数(短整数,长整数和整数)-这些整数表示整数。例如1234。八进制数字-这些用于以八进制表示形式表示数字。例如012。十六进制数字-这些用于表示表示形式中的数字。例如,0xff。基数-用基数表示数字。例如2r1111,其中基数是2到36(含2和36)之间...
📅  最后修改于: 2020-11-05 03:58:06        🧑  作者: Mango
在Clojure中,变量由‘def’关键字定义。变量的概念与绑定更多有关,这有点不同。在Clojure中,值绑定到变量。 Clojure中需要注意的一件事是变量是不可变的,这意味着要更改变量的值,需要将其销毁并重新创建。以下是Clojure中变量的基本类型。short-用于表示一个短数字。例如10。int-这用于表示整数。例如1234。long-用于表示长整数。例如,10000090。float-...
📅  最后修改于: 2020-11-05 03:58:37        🧑  作者: Mango
运算符是一个符号,告诉编译器执行特定的数学或逻辑操作。Clojure具有以下类型的运算符-算术运算运算符关系运算符逻辑运算符按位运算符注–在Clojure中,运算符和操作数以以下语法方式工作。句法例如,例上面的示例对数字1和2进行算术运算。算术运算符Clojure语言支持普通算术运算运算符,就像任何语言一样。以下是Clojure中可用的算术运算运算符。显示范例OperatorDescription...
📅  最后修改于: 2020-11-05 03:58:51        🧑  作者: Mango
到目前为止,我们已经看到了依次执行的语句。此外,Clojure中提供了语句来更改程序逻辑中的控制流。然后将它们分为控制语句流,我们将对其进行详细介绍。Sr.No.Loops & Description1While StatementThe‘while’statement is executed by first evaluating the condition expression (a Bool...
📅  最后修改于: 2020-11-05 03:59:07        🧑  作者: Mango
决策结构要求程序员指定一个或多个要由程序评估或测试的条件,以及确定条件为真的情况下要执行的一条或多条语句,以及如果确定条件为真,则要指定其他要执行的语句。条件确定为假。Sr.No.Methods & Description1If StatementIn Clojure, the condition is an expression which evaluates it to be either t...
📅  最后修改于: 2020-11-05 03:59:21        🧑  作者: Mango
Clojure被称为函数式编程语言,因此您可能会希望对Clojure中的函数如何工作有更多的重视。本章介绍Clojure中的函数可以完成的所有操作。Sr.No.Functions & Description1Defining a FunctionA function is defined by using the‘defn’macro.2Anonymous FunctionsAn anonymou...
📅  最后修改于: 2020-11-05 03:59:41        🧑  作者: Mango
Clojure中的Numbers数据类型派生自Java类。Clojure支持整数和浮点数。整数是不包含小数的值。浮点数是一个十进制值,其中包括一个十进制小数。以下是Clojure中数字的示例。其中’x’是Integer类型,而’y’是float。在Java中,以下类附加到Clojure中定义的数字上。要实际查看Clojure中的数字是从Java类派生的,请使用以下程序查看使用’def’命令时分配的...
📅  最后修改于: 2020-11-05 03:59:58        🧑  作者: Mango
我们已经在较早的主题中看到过recur语句,而“ for”循环有点像一个循环,而recur是Clojure中的真实循环。如果您具有编程背景,则可能听说过尾递归,这是功能语言的主要功能。这种递归特殊形式是实现尾递归的形式。正如“尾递归”一词所指,必须在尾部位置调用递归。换句话说,递归必须是要评估的最后一件事。recur语句的最简单示例在“ for”循环中使用。在下面的示例中,recur语句用于更改变...
📅  最后修改于: 2020-11-05 04:00:27        🧑  作者: Mango
使用I / O时,Clojure提供了许多辅助方法。它提供了更简单的类来为文件提供以下功能。读取文件写入文件查看文件是文件还是目录让我们探索Clojure提供的一些文件操作。以整个字符串读取文件的内容如果要以字符串获取文件的全部内容,则可以使用clojure.core.slurp方法。 slurp命令打开文件的阅读器并读取其所有内容,并返回一个字符串。以下是如何完成此操作的示例。如果文件包含以下几...
📅  最后修改于: 2020-11-05 04:00:47        🧑  作者: Mango
字符串字面量是用Clojure由封闭在报价字符串文本构成。 Clojure中的字符串需要使用双引号(例如“ Hello World”)构造。例以下是在Clojure中使用字符串的示例。现场演示输出上面的程序产生以下输出。基本字符串操作Clojure有许多可以对字符串执行的操作。以下是操作。Sr.No.String Operations & Description1strThe concatenat...