Penggunaan Bait dalam Pengekodan Rentetan
Mengira bilangan bait dalam rentetan dalam Java memerlukan pertimbangan kaedah pengekodan yang digunakan. Rentetan ialah jujukan aksara dan bilangan bait yang diperlukan untuk mewakilinya bergantung pada skema pengekodan yang digunakan untuk menukarnya kepada bait.
Menentukan Kiraan Bait
Untuk mendapatkan saiz rentetan dalam bait, tukarkannya kepada tatasusunan bait menggunakan kaedah getBytes() dan periksa saiz tatasusunan:
<code class="java">String string = "Hello World"; byte[] utf8Bytes = string.getBytes("UTF-8"); int byteCount = utf8Bytes.length;</code>
Pertimbangan Pengekodan
Pertimbangan Pengekodan skim pengekodan mempengaruhi kiraan bait. Berikut ialah contoh pengekodan berbeza yang digunakan pada rentetan yang sama:
<code class="java">byte[] utf8Bytes = string.getBytes("UTF-8"); // Each char as 1 byte byte[] utf16Bytes = string.getBytes("UTF-16"); // Each char as 2 bytes byte[] utf32Bytes = string.getBytes("UTF-32"); // Each char as 4 bytes byte[] isoBytes = string.getBytes("ISO-8859-1"); // Each ASCII char as 1 byte byte[] winBytes = string.getBytes("CP1252"); // Each ASCII char as 1 byte</code>
Watak Khas dan Pengekodan Berbilang Bait
Malah rentetan ASCII boleh mempunyai kiraan bait yang berbeza-beza bergantung pada pengekodan. Contohnya, dalam UTF-8, sesetengah aksara mungkin memerlukan berbilang bait:
<code class="java">String interesting = "\uF93D\uF936\uF949\uF942"; // Chinese ideograms byte[] utf8Bytes = interesting.getBytes("UTF-8"); // Each char as 3 bytes</code>
Pengekodan Lalai dan Spesifikasi Eksplisit
Jika tiada hujah pengekodan disediakan, platform set aksara lalai digunakan. Adalah disyorkan untuk sentiasa menyatakan set aksara yang diingini secara eksplisit untuk mengelakkan hasil yang tidak dijangka.
Atas ialah kandungan terperinci Berapa Banyak Bait yang Diduduki Rentetan: Pandangan pada Pengekodan Java dan Penggunaan Bait?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!