値ペアの Java コレクション: 配列のようなソリューション
Java では、Map を使用してキーと値のペアを保持するコレクションを定義できます。 。ただし、各要素が独自の型を持つ 2 つの値で構成され、元の順序が維持されるコレクションを探します。これは事実上、各要素に特定の型を持つ配列に似ています。
この要件を満たすには、java.util.Map.Entry
コレクションにデータを入力するには、AbstractMap.SimpleEntry
Entry<String, Integer> pair1 = new SimpleEntry<>("Not Unique key1", 1); Entry<String, Integer> pair2 = new SimpleEntry<>("Not Unique key2", 2);
または、ArrayList をサブクラス化してペアの作成をカプセル化し、便利なメソッドを追加できます:
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; } }
このアプローチを使用する、特定のタイプのペアのコレクションを定義して設定できます。
TupleList<Map.Entry<String, Integer>> pairList = TupleList.of("Not Unique key1", 1); pairList.of("Not Unique key2", 2);
このソリューションは、タイプセーフな値のペアを持つ配列のような構造。カスタム クラスの冗長性や 2D 配列で必要なキャストを回避します。
以上がJava で配列のような型付き値ペアの順序付きコレクションを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。