Kata pengantar
Ada banyak cara untuk melintasi peta di Java. Dalam artikel ini, mari kita lihat dua metode membaca peta di Java dan perbandingan kedua metode ini.
1. Metode peta traversal a
Peta peta = hashmap baru (); Iterator iter = map.entryset (). Iterator (); while (iter.hasnext ()) {map.entry entri = (map.entry) iter.next (); Tombol objek = entri.getKey (); Objek val = entri.getValue (); } 2. Metode Peta Melintasi B
Peta peta = hashmap baru (); Iterator iter = map.keyset (). Iterator (); while (iter.hasnext ()) {tombol objek = iter.next (); Objek val = map.get (key); } 3. Analisis Metode Traversal
Metode A: Baca Map.Entry sekali di traversal, dan kemudian langsung dapatkan nilainya.
Metode B: Berdasarkan kunci, berulang kali melalui terlebih dahulu, dan kemudian membaca informasi dari peta.
4. Pengujian Kinerja
impor java.util.hashmap; impor java.util.iterator; impor java.util.map; impor org.junit.beforeclass; impor org.junit.test; kelas publik maploopa {private static Map <integer, string> infos = new HashMap <Integer, String> (); @Beforeclass public static void setup () {for (int i = 0; i <1000000; i ++) {infos.put (i, "Tes informasi"+i); } System.out.println ("Pengaturan dilakukan."); } @Test public void testMaploopa () {iterator <map.entry <integer, string >> iterator = infos.entryset (). Iterator (); Long StartTime = System.CurrentTimeMillis (); while (iterator.hasnext ()) {map.entry <integer, string> entri = iterator.next (); int key = entry.getKey (); String val = entry.getValue (); } System.out.println ("Solusi mengambil peta looping dengan 1000000 entri:" + (System.CurrentTimeMillis ()-StartTime) + "Milli Seconds"); } @Test public void testMaploopB () {iterator <Integer> iterator = infos.keyset (). Iterator (); Long StartTime = System.CurrentTimeMillis (); while (iterator.hasnext ()) {int key = iterator.next (); String val = infos.get (key); } System.out.println ("B Solusi Mengambil Looping Map dengan 1000000 Entri:" + (System.CurrentTimeMillis ()-StartTime) + "Milli Seconds"); }}Hasil tes:
Dapat dilihat bahwa 1000.000 data disimpan di peta dan dilintasi dalam kumpulan data ini. Perbedaan kinerja hampir 1 kali perbedaan efisiensi.
5. Ringkasan
Oke, di atas adalah semua tentang artikel ini. Anda dapat melihat bahwa efisiensi metode mobil A umumnya lebih tinggi. Secara umum, disarankan untuk menggunakan metode A. Saya harap konten artikel ini akan membantu untuk belajar atau bekerja semua orang.