ハッシュマップを使って特定のキーに対応する値と特定の値に対応するキーを検索できる構造を作成し終わった。しかし、私はこのような構成に名前があるかの実装例任意の設計原理/パターンここでキーと値の両方で検索できる構造体の名前は何ですか?
の一部されているかどうかを知りません:
import { fromArrays } from './objectUtils';
export default class Dict {
constructor(obj) {
this.map = obj;
this._keys = Object.keys(obj);
this._values = Object.values(obj)
this.reversed = fromArrays(this._values, this._keys)
}
getKeyFor(value) {
return this.reversed[value]
}
getValue(key) {
return this.map[key]
}
hasValue(value) {
return this.reversed.hasOwnProperty(value)
}
get keys() {
return this._keys
}
get values() {
return this._values
}
get object() {
return this.map
}
}
私はDictのそれを呼んだが、私はノーを持って正直に言うとどのようにそれを呼び出すアイデア。 ご覧のとおり、カプセル化されるオブジェクトを提供する必要があります。 実装はあまりうまくいかず、非固有値などのように正しく動作しない状況がありますが、現在の私の場合はこれが起こらないはずですので、私にとっては問題ではありません。
しかし、このタイプの構成についてのドキュメントがある場合は、それについて学びたいと思います。私はその機能についてグーグルで試してみましたが、インターネットにはマップやオブジェクトの仕方や配列の検索方法に関する質問やチュートリアルが膨れています。
ありがとうございます。
Javaでは、https://stackoverflow.com/questions/3430170/how-to-create-a-2-way-map-in-java – dev8080