Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Memulakan HashMap dengan Cekap di Java?

Bagaimanakah Saya Boleh Memulakan HashMap dengan Cekap di Java?

DDD
DDDasal
2024-12-21 13:17:09162semak imbas

How Can I Efficiently Initialize a HashMap in Java?

Cara Memulakan HashMap Secara Terus: Panduan Komprehensif

Memulakan Java HashMap boleh menjadi tugas yang menyusahkan, terutamanya apabila berurusan dengan nilai statik atau diketahui. Walau bagaimanapun, terdapat beberapa kaedah untuk mencapai ini, masing-masing dengan kekuatan dan batasannya.

Java Versi 9 dan Ke Atas


Java 9 memperkenalkan kaedah kilang yang sangat memudahkan HashMap permulaan:



  • Untuk sehingga sepuluh elemen:
    Peta test1 = Map.of(
    "a", "b",
    "c", "d"
    );

  • < li>Untuk sebarang bilangan elemen:
    Peta test2 = Map.ofEntries(
    entry("a", "b"),
    entry("c", "d")
    );

Java Versi 8 dan Di bawah


Untuk versi lama, terdapat beberapa teknik:



  1. Subkelas Anonymous dengan Initializer:
    < ;pra>Peta myMap = HashMap() {{
    put("a", "b");
    put("c", "d");
    }};

  2. Fungsi Asingkan untuk Permulaan:
    Peta myMap = createMap();

    Peta statik peribadi createMap() {
    Peta myMap = new HashMap();
    myMap.put("a", "b");
    myMap.put("c", "d");
    return myMap;
    }


  3. Peta Tunggal (Untuk Kemasukan Tunggal):
    Peta test = Collections.singletonMap("test", "test");

Manakala subkelas tanpa nama kaedah adalah mudah, ia mempunyai potensi kelemahan, seperti peningkatan penggunaan memori dan tingkah laku yang tidak diingini. Sebagai alternatif, menggunakan fungsi yang berasingan untuk pemula, manakala verbose, membolehkan pengkapsulan yang lebih baik dan mengelakkan isu yang berpotensi.


Ingat, pilihan kaedah bergantung pada versi Java yang tersedia dan kerumitan keperluan. Penilaian yang teliti akan memastikan prestasi optimum dan kebolehselenggaraan untuk permulaan HashMap anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memulakan HashMap dengan Cekap di 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