Clojure映射(Maps)

Clojure映射(Maps) 首页 / Clojure入门教程 / Clojure映射(Maps)

Map是将键映射到值的集合,HashMaps需要正确支持hashCode和equals的键, SortedMaps需要实现Comparable的键或Comparator的实例。

可以通过两种方式创建map,第一种是通过hash-map方法。

创建HashMaps

HashMap具有典型的键值关系,并且是通过使用hash-map函数创建的。

(ns clojure.examples.example
   (:gen-class))
(defn example []
   (def demokeys (hash-map "z" "1" "b" "2" "a" "3"))
   (println demokeys))
(example)

上面的代码产生以下输出。

链接:https://www.learnfk.comhttps://www.learnfk.com/clojure/clojure-maps.html

来源:LearnFk无涯教程网

{z 1, b 2, a 3}

创建SortedMaps

SortedMaps具有基于key元素对元素进行排序的独特特征,以下示例显示了如何使用sorted-map函数创建排序后的Map。

(ns clojure.examples.example
   (:gen-class))
(defn example []
   (def demokeys (sorted-map "z" "1" "b" "2" "a" "3"))
   (println demokeys))
(example)

上面的代码产生以下输出。

链接:https://www.learnfk.comhttps://www.learnfk.com/clojure/clojure-maps.html

来源:LearnFk无涯教程网

{a 3, b 2, z 1}

从上面的程序中,您可以清楚地看到map中的元素是根据键值排序的。以下是可用于Map的方法。

Sr.No.Maps & 描述
1 get

返回map到键的值,如果键不存在,则找不到键或为nil。

2 contains?

查看Map是否包含必需的key。

3 find

返回键的map条目。

4 keys

返回Map中的键列表。

5 vals

返回map中的值列表。

6 dissoc

将键值条目与Map分离。

无涯教程网

7 merge

将两个Map条目合并为一个Map条目。

8 merge-with

返回由map到第一个map的其余map组成的map。

9 select-keys

返回仅包含键在键中的条目的map。

10 rename-keys

将当前HashMap中的键重命名为新定义的键。

11 map-invert

反转map,使值成为键,反之亦然。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

教程推荐

大模型应用开发实战 -〔黄佳〕

AI绘画核心技术与实战 -〔南柯〕

JavaScript进阶实战课 -〔石川〕

HarmonyOS快速入门与实战 -〔QCon+案例研习社〕

Redis源码剖析与实战 -〔蒋德钧〕

技术面试官识人手册 -〔熊燚(四火)〕

性能工程高手课 -〔庄振运〕

Web协议详解与抓包实战 -〔陶辉〕

趣谈网络协议 -〔刘超〕

好记忆不如烂笔头。留下您的足迹吧 :)