Implementieren einer Karte mit mehreren Schlüsseln
Frage:
Wie kann ich Daten erstellen? Struktur, die sich wie eine Karte verhält, aber mehrere (verschieden typisierte) Schlüssel verwendet, um auf ihre Werte zuzugreifen? Die Schlüssel sind garantiert einzigartig. Ich benötige Methoden wie getByKey1, getByKey2, enthältKey1 und enthältSchlüssel2.
Antwort:
Ein Ansatz besteht darin, zwei interne Maps zu verwenden:
Mit dieser Methode können Sie Werte mit beiden Schlüsseln suchen, da jeder Schlüssel seine eigene Map hat.
Zusätzliche Hinweise:
Beispielcode:
<code class="java">import java.util.HashMap; import java.util.Map; class MyMap<K1, K2, V> { private Map<K1, V> map1; private Map<K2, V> map2; public MyMap() { map1 = new HashMap<>(); map2 = new HashMap<>(); } public V getByKey1(K1 key) { return map1.get(key); } public V getByKey2(K2 key) { return map2.get(key); } public boolean containsKey1(K1 key) { return map1.containsKey(key); } public boolean containsKey2(K2 key) { return map2.containsKey(key); } public void put(K1 key1, K2 key2, V value) { map1.put(key1, value); map2.put(key2, value); } }</code>
Das obige ist der detaillierte Inhalt vonWie erstelle ich eine Karte mit mehreren Schlüsseln für den Wertzugriff?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!