Clojure-マップ
A Mapキーを値にマップするコレクションです。ハッシュとソートの2つの異なるマップタイプが提供されています。HashMaps hashCodeとequalsを正しくサポートするキーが必要です。 SortedMaps Comparableを実装するキー、またはComparatorのインスタンスが必要です。
マップは2つの方法で作成できます。1つはハッシュマップメソッドを使用する方法です。
作成-HashMaps
HashMapには典型的なキーと値の関係があり、ハッシュマップ関数を使用して作成されます。
(ns clojure.examples.example
(:gen-class))
(defn example []
(def demokeys (hash-map "z" "1" "b" "2" "a" "3"))
(println demokeys))
(example)
出力
上記のコードは次の出力を生成します。
{z 1, b 2, a 3}
作成-SortedMaps
SortedMapには、キー要素に基づいて要素を並べ替えるという独自の特性があります。以下は、sorted-map関数を使用してソートされたマップを作成する方法を示す例です。
(ns clojure.examples.example
(:gen-class))
(defn example []
(def demokeys (sorted-map "z" "1" "b" "2" "a" "3"))
(println demokeys))
(example)
上記のコードは次の出力を生成します。
{a 3, b 2, z 1}
上記のプログラムから、マップ内の要素がキー値に従ってソートされていることがはっきりとわかります。マップで使用できる方法は次のとおりです。
シニア番号 | 地図と説明 |
---|---|
1 | 取得する
キーにマップされた値、not-found、またはキーが存在しない場合はnilを返します。 |
2 | 含まれていますか?
マップに必要なキーが含まれているかどうかを確認します。 |
3 | 見つける
キーのマップエントリを返します。 |
4 | キー
マップ内のキーのリストを返します。 |
5 | vals
マップ内の値のリストを返します。 |
6 | dissoc
キー値エントリをマップから分離します。 |
7 | マージ
2つのマップエントリを1つの単一のマップエントリにマージします。 |
8 | と合併
最初のマップに接続された残りのマップで構成されるマップを返します。 |
9 | 選択キー
キーがキーにあるマップ内のエントリのみを含むマップを返します。 |
10 | 名前の変更-キー
現在のHashMapのキーの名前を新しく定義されたものに変更します。 |
11 | マップ反転
値がキーになるように、またはその逆になるようにマップを反転します。 |