Java は、キーと値のペアを管理するための Map データ構造を提供し、各エントリに特定のタイプを定義できるようにします。ただし、各要素が異なる型の 2 つの値で構成される値のペアのコレクションが必要な場合、Map は理想的なソリューションではない可能性があります。
これに対処するために、Java は代替手段を提供します。AbstractMap .SimpleEntry クラス。このクラスを使用すると、値のペアを含むエントリを作成できます。各値は独自の型を持つことができます。
AbstractMap.SimpleEntry を利用するには、次の手順に従います。
例:
// Create a list of SimpleEntry pairs List<Map.Entry<String, Integer>> pairList = new ArrayList<>(); // Add some pairs to the list pairList.add(new AbstractMap.SimpleEntry<>("Not Unique Key 1", 1)); pairList.add(new AbstractMap.SimpleEntry<>("Not Unique Key 2", 2));
プロセスを簡略化するために、createEntry() メソッドを使用して SimpleEntry インスタンスを作成できます。希望のタイプで。さらに、ArrayList クラスをサブクラス化し、of() メソッドを公開して構文をさらに簡潔にすることができます。
// Create a TupleList class extending ArrayList public class TupleList<E> extends ArrayList<E> { public TupleList() {} // Exposed method for creating and adding SimpleEntry pairs public void of(Object... args) { if (args.length % 2 != 0) { throw new IllegalArgumentException("Number of arguments must be even."); } for (int i = 0; i < args.length; i += 2) { add(new SimpleEntry<>(args[i], args[i + 1])); } } } // Usage TupleList<Map.Entry<String, Integer>> pair = new TupleList<>(); pair.of("Not Unique Key 1", 1); pair.of("Not Unique Key 2", 2);
これにより、ペアを作成してコレクションに追加するためのより簡潔な構文が可能になります。
以上が値ペアに Java の「Map」の代わりに「AbstractMap.SimpleEntry」を使用する必要があるのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。