- 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 - 代理
- Clojure - 观察者
- Clojure - 宏
- Clojure - 引用值
- Clojure - 数据库
- Clojure - Java 接口
- Clojure - 并发编程
- Clojure - 应用
- Clojure - 自动化测试
- Clojure - 库
- Clojure 有用资源
- Clojure - 快速指南
- Clojure - 有用资源
- Clojure - 讨论
Clojure - 命名空间
命名空间在 Clojure 中用于将类区分到不同的逻辑空间,就像在 Java 中一样。考虑以下语句。
(:require [clojure.set :as set])
在上面的语句中,‘clojure.set’是一个命名空间,它包含程序中要使用的各种类和方法。例如,上述命名空间包含一个名为 map-invert 的函数,用于反转键值映射。除非我们明确告诉程序包含此命名空间,否则我们无法使用此函数。
让我们看看命名空间可用的不同方法。
序号 | 方法和描述 |
---|---|
1 | *ns*
用于查看当前命名空间。 |
2 | ns
用于创建一个新的命名空间并将其与正在运行的程序关联。 |
3 | alias
在当前命名空间中添加对另一个命名空间的别名。参数是两个符号:要使用的别名和目标命名空间的符号名称。 |
4 | all-ns
返回所有命名空间的列表。 |
5 | find-ns
查找并返回特定命名空间。 |
6 | ns-name
返回特定命名空间的名称。 |
7 | ns-aliases
返回与任何命名空间关联的别名。 |
8 | ns-map
返回命名空间的所有映射的映射。 |
9 | un-alias
返回一个映射,该映射只包含map中键在keys中的条目。 |
广告