Rumah  >  Artikel  >  Java  >  Apakah rentetan padat dalam Java 9?

Apakah rentetan padat dalam Java 9?

PHPz
PHPzke hadapan
2023-09-11 17:09:02712semak imbas

Java 9中的紧凑字符串是什么?

Sejak Java 9, JVM mengoptimumkan rentetan dengan menggunakan ciri baharu yang dipanggil CompactStrings. Rentetan boleh diwakili sebagai tatasusunan bait[] bukannya char[] tatasusunan. Kita boleh menggunakan UTF-16 atau Latin-1 untuk menjana satu atau dua bait setiap aksara. Jika JVM mengesan bahawa rentetan hanya mengandungi ISO-8859-1/Latin-1 aksara, rentetan secara dalaman menggunakan satu bait setiap aksara.

boleh menunjukkan bahawa rentetan akan mengesan sama ada ia mengandungi rentetan padat semasa mencipta rentetan. Ciri ini didayakan secara lalai dan dimatikan menggunakan -XX:-CompactStrings. Ia tidak kembali kepada pelaksanaan char[] dan menyimpan semua rentetan sebagai UTF-16.

<strong>// In Java 8
public class String {
   private final char[] value; // Stores characters in the string
      ---------
}

// In Java 9
public class String {
   private final byte[] value; // Stores characters in the string
   private final byte coder; // a flag whether to use 1 byte per character or 2 bytes per characters for this string

      ---------
}</strong>

Atas ialah kandungan terperinci Apakah rentetan padat 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