Menyingkap Enigma: Memahami "[B@1ef9157"
Apabila bekerja dengan tatasusunan bait dalam Java, anda mungkin mengalami rentetan yang pelik dengan format "[B@prefix", dengan "prefix" ialah jujukan arbitrari aksara perenambelasan. Notasi yang kelihatan samar ini mempunyai penjelasan yang jelas yang mendedahkan fungsi dan prinsip asasnya.
Memecah Awalan
Awalan "[B@" mempunyai empat komponen berbeza yang memberikan cerapan tentang sifat tatasusunan:
Bertentangan dengan beberapa andaian, awalan heksadesimal tidak memberikan perwakilan kandungan tatasusunan. Sebaliknya, ia berfungsi sebagai pengecam untuk membezakan antara tatasusunan bait yang berbeza dalam sistem.
Memvisualisasikan Awalan
Pertimbangkan coretan kod Java berikut:
<code class="java">byte[] byteArray = {1, 2, 3, 4}; System.out.println(byteArray.toString()); // Prints "[B@1ef9157"</code>
Dalam kes ini, tatatanda "[B@1ef9157" menyampaikan maklumat berikut:
Kepentingan Awalan
Walaupun awalan heksadesimal mungkin tidak mendedahkan secara langsung kandungan tatasusunan, ia memegang nilai dalam senario tertentu. Contohnya, ia boleh membantu dalam situasi penyahpepijatan atau apabila cuba membezakan antara tatasusunan berbilang bait.
Mencetak Kandungan Tatasusunan
Untuk mencetak kandungan sebenar tatasusunan, anda boleh menggunakan kaedah seperti Arrays.toString() atau Hex.encodeHex(). Walau bagaimanapun, ingat bahawa kaedah ini akan menukar nilai bait masing-masing kepada rentetan yang boleh dibaca atau perwakilan heksadesimal.
Notasi Jenis Tambahan
Di luar tatatanda "[B@" , Java menyediakan sistem yang komprehensif untuk mewakili jenis data dan objek yang berbeza:
Memahami tatatanda ini adalah penting untuk mentafsir keluaran Java yang kompleks dan memahami kerja dalaman platform.
Atas ialah kandungan terperinci Apakah Maksud \"[B@1ef9157\" Apabila Bekerja dengan Tatasusunan Byte di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!