Rumah  >  Artikel  >  Java  >  Bagaimana untuk melakukan pemetaan tertib menggunakan fungsi LinkedHashMap dalam Java

Bagaimana untuk melakukan pemetaan tertib menggunakan fungsi LinkedHashMap dalam Java

PHPz
PHPzasal
2023-06-26 13:56:39960semak imbas

Dalam pengaturcaraan Java, kadangkala perlu menggunakan struktur data pemetaan yang boleh diisih untuk memenuhi keperluan data disusun dalam susunan tertentu. LinkedHashMap dalam Java ialah struktur pemetaan tersusun, yang mewarisi semua ciri HashMap dan menyediakan fungsi tambahan untuk mengingati susunan sisipan. Dalam artikel ini, kami akan menerangkan cara melakukan pemetaan tertib menggunakan fungsi LinkedHashMap dalam Java.

Bagaimana LinkedHashMap berfungsi?

LinkedHashMap ialah pelaksanaan Peta dalam rangka kerja koleksi Java, yang menyediakan struktur pemetaan pasangan nilai kunci tersusun. Seperti HashMap, LinkedHashMap juga mewarisi antara muka Peta dan menyediakan jadual Hash untuk mendapatkan semula dan mencari nilai dalam jadual pemetaan dengan cepat. Tidak seperti HashMap, LinkedHashMap bukan sahaja menggunakan jadual Hash untuk menyimpan pasangan nilai kunci, tetapi juga menggunakan senarai terpaut untuk mengekalkan susunan sisipan. Ini membolehkan pasangan nilai kunci dalam jadual pemetaan dilalui mengikut urutan sisipan.

Butiran pelaksanaan LinkedHashMap

LinkedHashMap mengekalkan dua penunjuk, satu menunjuk ke kepala meja dan satu menunjuk ke ekor meja. Apabila elemen dimasukkan ke dalam LinkedHashMap, ia ditambahkan pada penghujung senarai terpaut. Apabila semua elemen jadual pemetaan perlu dilalui, LinkedHashMap boleh melintasi sepanjang senarai terpaut untuk memastikan susunan elemen.

Penggunaan LinkedHashMap

Penggunaan LinkedHashMap adalah serupa dengan HashMap Ia juga mempunyai kaedah biasa seperti meletakkan, mendapatkan, mengeluarkan, mengosongkan, saiz, dan lain-lain, tetapi ia berbeza sedikit daripada HashMap apabila melintasi. Unsur-unsur yang dikembalikan oleh kaedah iterator LinkedHashMap dipesan, jadi ia boleh dijamin bahawa apabila melintasi LinkedHashMap, lelaran sentiasa dilakukan dalam susunan tetap.

Pertama, kita perlu mengimport kelas LinkedHashMap:

import java.util.LinkedHashMap;

Kemudian, kita boleh mencipta contoh LinkedHashMap kosong untuk menyimpan pasangan nilai kunci:

LinkedHashMap<String, Integer> map = new LinkedHashMap<String, Integer>();

Seterusnya, kita boleh menggunakan kaedah put untuk menambah pasangan nilai kunci pada peta:

map.put("apple", 10); // 插入键 "apple",值为 10
map.put("banana", 20); // 插入键 "banana",值为 20
map.put("orange", 30); // 插入键 "orange",值为 30

Kita boleh menggunakan kaedah get untuk membuat pertanyaan dengan kunci:

Integer value = map.get("apple"); // 查询键 "apple" 的值,返回10

Dengan menggunakan kaedah keys() dan values(), kita boleh mendapatkan set semua kunci dan semua nilai dalam peta masing-masing.

Set<String> keys = map.keySet(); // 获取所有键的集合
Collection<Integer> values = map.values(); // 获取所有值的集合

Apabila melintasi LinkedHashMap, kita boleh menggunakan kaedah entrySet(). Kaedah ini mengembalikan Set yang mengandungi semua pasangan nilai kunci peta, di mana susunan pasangan nilai kunci adalah mengikut susunan sisipan.

for (Map.Entry<String, Integer> entry : map.entrySet()) {
    System.out.println(entry.getKey() + "=>" + entry.getValue());
}

Ringkasan:

Dalam pengaturcaraan Java, LinkedHashMap ialah struktur pemetaan pasangan nilai kunci boleh diisih, yang boleh memenuhi keperluan traversal dalam susunan sisipan dengan mudah. Apabila menggunakan LinkedHashMap, kita boleh menggunakan kaedah put, get, remove dan clear untuk mengurus pasangan nilai kunci, dan pada masa yang sama merentasi semua pasangan nilai kunci melalui kaedah entrySet(). Dengan menguasai penggunaan asas LinkedHashMap, kami boleh melaksanakan pengaturcaraan yang lebih fleksibel.

Atas ialah kandungan terperinci Bagaimana untuk melakukan pemetaan tertib menggunakan fungsi LinkedHashMap dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn