Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Menyimpan Pasangan Nilai dalam Java Tanpa Kekunci Unik?
Pengenalan:
Apabila bekerja dengan struktur data di Java, seseorang sering menghadapi keperluan untuk koleksi yang menyimpan pasangan nilai dengan jenis yang berbeza. Walaupun Java menyediakan Peta untuk tujuan ini, mereka menguatkuasakan kunci unik untuk setiap entri, yang mungkin tidak selalu diingini. Artikel ini membincangkan penyelesaian alternatif untuk menyimpan pasangan nilai: AbstractMap.SimpleEntry.
Jawapan:
AbstractMap.SimpleEntry ialah kelas yang sesuai untuk mewakili pasangan nilai. Ia melaksanakan antara muka Map.Entry, menyediakan kaedah untuk mengakses dan mengubah suai kunci dan nilai. Walau bagaimanapun, tidak seperti Peta, SimpleEntry tidak memerlukan kunci unik untuk setiap pasangan.
Pelaksanaan:
Untuk menggunakan AbstractMap.SimpleEntry, anda boleh mencipta ArrayList objek SimpleEntry , menyatakan jenis kunci dan nilai pada instantiasi. Berikut ialah contoh:
java.util.List<java.util.Map.Entry<String, Integer>> pairList = new java.util.ArrayList<>(); // Create and add pairs to the list java.util.Map.Entry<String, Integer> pair1 = new java.util.AbstractMap.SimpleEntry<>("Not Unique key1", 1); java.util.Map.Entry<String, Integer> pair2 = new java.util.AbstractMap.SimpleEntry<>("Not Unique key2", 2); pairList.add(pair1); pairList.add(pair2);
Penyesuaian:
Untuk kemudahan tambahan, anda boleh mencipta subkelas ArrayList yang menyediakan kaedah "daripada" untuk membuat dan menambah dengan mudah pasangan ke senarai. Ini memudahkan lagi sintaks:
public class TupleList<T> extends ArrayList<T> { public static <S, U> TupleList<Map.Entry<S, U>> of(S key, U value) { Map.Entry<S, U> pair = new AbstractMap.SimpleEntry<>(key, value); TupleList<Map.Entry<S, U>> tupleList = new TupleList<>(); tupleList.add(pair); return tupleList; } } // Usage TupleList<Map.Entry<String, Integer>> pair = new TupleList<>(); pair.of("Not Unique key1", 1); pair.of("Not Unique key2", 2);
Dengan menggunakan AbstractMap.SimpleEntry, pembangun boleh menyimpan data secara cekap secara berpasangan dengan pelbagai jenis, mengekalkan susunan tanpa kekangan keunikan utama.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyimpan Pasangan Nilai dalam Java Tanpa Kekunci Unik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!