Heim >Java >javaLernprogramm >Wie kann ich in Java eine geordnete Sammlung typisierter Wertepaare wie ein Array erstellen?
Java-Sammlung für Wertepaare: Eine Array-ähnliche Lösung
In Java können Sie mithilfe von Map Sammlungen definieren, die Schlüssel-Wert-Paare enthalten . Sie suchen jedoch nach einer Sammlung, in der jedes Element aus zwei Werten besteht, von denen jeder seinen eigenen Typ hat, und die die ursprüngliche Reihenfolge beibehält. Dies ähnelt effektiv einem Array mit spezifischen Typen für jedes Element.
Um diese Anforderung zu erfüllen, sollten Sie die Verwendung von java.util.Map.Entry
Um die Sammlung zu füllen, verwenden Sie AbstractMap.SimpleEntry
Entry<String, Integer> pair1 = new SimpleEntry<>("Not Unique key1", 1); Entry<String, Integer> pair2 = new SimpleEntry<>("Not Unique key2", 2);
Alternativ können Sie ArrayList in Unterklassen unterteilen, um die Erstellung von Paaren zu kapseln und eine praktische Methode hinzuzufügen:
public class TupleList<E extends Map.Entry<K, V>> extends ArrayList<E> { public static <K, V> TupleList<Map.Entry<K, V>> of(K key, V value) { TupleList<Map.Entry<K, V>> list = new TupleList<>(); list.add(new SimpleEntry<>(key, value)); return list; } }
Verwenden Sie diesen Ansatz , können Sie eine Sammlung von Paaren mit bestimmten Typen definieren und füllen:
TupleList<Map.Entry<String, Integer>> pairList = TupleList.of("Not Unique key1", 1); pairList.of("Not Unique key2", 2);
Diese Lösung stellt ein Array-ähnliches Element bereit Struktur mit typsicheren Wertepaaren, wodurch die Ausführlichkeit benutzerdefinierter Klassen oder das bei 2D-Arrays erforderliche Casting vermieden wird.
Das obige ist der detaillierte Inhalt vonWie kann ich in Java eine geordnete Sammlung typisierter Wertepaare wie ein Array erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!