Rumah >Java >javaTutorial >Apakah faedah koleksi tidak berubah dalam Java 9?

Apakah faedah koleksi tidak berubah dalam Java 9?

PHPz
PHPzke hadapan
2023-09-07 10:45:03921semak imbas

Java 9中的不可变集合有哪些好处?

Di Java 9, beberapa kaedah kilang telah ditambahkan pada Koleksi API. Dengan menggunakan kaedah kilang ini, kami boleh membuat tidak boleh ubahsenarai, koleksi dan objek koleksi dipetakan, sekali gus mengurangkan bilangan baris kod. Dalam Java 9, List.of(), Set.of(), Map.of() dan Map.ofEntries() ialah kaedah kilang statik yang mudah untuk mencipta tidak berubah Koleksi.

Faedah Koleksi Tidak Berubah

  • Ruang Longgokan Kurang: Ruang yang sangat sedikit diperlukan untuk menyimpan data pengumpulan berbanding pendekatan tradisional dalam versi Java yang lebih awal.
  • Akses data yang lebih pantas: Akses data kini lebih pantas disebabkan oleh pengurangan overhed menyimpan data dan membungkusnya sebagai Collections.unmodifiable. Ini bermakna kecekapan keseluruhan program meningkat.
  • Selamat untuk benang: Koleksi tidak berubah secara semula jadi selamat untuk benang. Kerana semua urutan sentiasa mendapat pandangan yang sama tentang data asas. Terjemahan bahasa Cina bagi

Tatabahasa

<strong>List.of(elements...)
Set.of(elements...)
Map.of(k1, v1, k2, v2)
</strong>

Contoh

ialah:

Contoh

import java.util.Set;
import java.util.List;
import java.util.Map;
public class ImmutableCollectionsTest {
   public static void main(String args[]) {
      <strong>List<String></strong> stringList = <strong>List.of</strong>("a", "b", "c");
      System.out.println("List values: " + stringList);
      <strong>Set<String></strong> stringSet = <strong>Set.of</strong>("a", "b", "c");
      System.out.println("Set values: " + stringSet);
      <strong>Map<String, Integer></strong> stringMap = <strong>Map.of</strong>("a", 1, "b", 2, "c", 3);
      System.out.println("Map values: " + stringMap);
   }
}

Output

<strong>List values: [a, b, c]
Set values: [a, b, c]
Map values: {a=1, b=2, c=3}</strong>

Atas ialah kandungan terperinci Apakah faedah koleksi tidak berubah dalam Java 9?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam