この質問は最初は誤解されていました。以下の編集を参照してください。文脈のために残しておきます。
私は全単射 (すなわち 1 対 1) マッピングを構築するスマートな方法について考えてきました。関数 A->B (多対 1) のマッピングは、基本的に HashMap(A,B) が行うことです。O(1) で contains() を使用して 1 対 1 で何かを実装するデータ構造が必要な場合、Java 標準ライブラリに使用できるものはありますか? 気をつけてください、今のところこれは必要ありません。これは最近考えたものであり、データ構造を思い付くことができなかったので、答えは急いではありません. そんなクラスある?そうでない場合、その理由は何だと思いますか。
SOで見つけることができたのは、休止状態に関するものだけで、それは私には役に立ちませんでした。
編集:私の質問は言い回しが悪かったので、説明が必要です。
私が意味したのは、「後方」マッピング B->A です。HashMap(A,B) は、O(1) に contains(A) と contains(B) の両方を持っているため、それは私が意図したものでもありません。混乱して申し訳ありません。つまり、O(1) に getValue(A) と getKey(B) を持つデータ構造マッピング A<->B はありますか?
これは、同じ関係を保持するように維持されている 2 つの HashMap (A,B) と (B,A) を使用して実行できることを認識していますが、「手動で」行う必要なくそれを処理する 1 つのデータ構造が必要だと感じています。