Mengisih HashMap dalam Java: Teknik Berasaskan Nilai
Di Java, HashMaps ialah koleksi berharga untuk menyimpan pasangan nilai kunci, tetapi ia tidak mengekalkan susunan pengisihan tertentu. Untuk mengisih HashMap berdasarkan nilai, kita perlu menggunakan teknik tambahan.
Pendekatan untuk Pengisihan Berasaskan Nilai
Satu pendekatan ialah menukar HashMap kepada senarai nilai menggunakan kaedah values(). Kami kemudiannya boleh mengisih senarai menggunakan pembanding yang mentakrifkan logik pengisihan yang diingini.
Map<String, Person> people = new HashMap<>(); Person jim = new Person("Jim", 25); Person scott = new Person("Scott", 28); Person anna = new Person("Anna", 23); people.put(jim.getName(), jim); people.put(scott.getName(), scott); people.put(anna.getName(), anna); List<Person> peopleByAge = new ArrayList<>(people.values()); Collections.sort(peopleByAge, Comparator.comparing(Person::getAge));
Selepas mengisih senarai, kami boleh mengakses elemen yang diisih.
Pendekatan lain, sesuai untuk akses kerap , adalah untuk mencipta pemetaan HashMap kepada set yang diisih. Sebagai contoh, kita boleh menggunakan HashMap
Pertimbangan untuk TreeMap
Jika mengisih mengikut kekunci lebih diutamakan, adalah wajar mempertimbangkan menggunakan TreeMap sebaliknya. TreeMaps secara automatik mengekalkan susunan pengisihan semula jadi berdasarkan kekunci.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menyusun Java HashMap mengikut Nilainya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!