Menyahpepijat Ketidakkonsistenan toString() untuk Tatasusunan Java
Semasa cuba menukar tatasusunan aksara kepada objek rentetan menggunakan toString(), timbul isu yang membingungkan. Walaupun menjangkakan "abcdef", hasilnya ialah koleksi aksara yang penuh teka-teki seperti "[C@6e1408" atau "[C@e53108". Paparan yang tidak berorientasikan ini mencetuskan pertanyaan: apakah yang tidak kena?
Menyelidiki teka-teki, ternyata kaedah toString() konvensional untuk tatasusunan menghasilkan perwakilan kod cincang yang tidak boleh dibaca. Untuk membetulkan perkara ini, pembangun Java mesti menggunakan Arrays.toString(), yang menghasilkan rentetan yang boleh dibaca manusia dengan cekap.
Untuk pemahaman yang lebih mendalam, pertimbangkan sifat rumit toString() untuk tatasusunan. Ia memulakan proses dengan mencetak "[," diikuti dengan aksara yang melambangkan jenis elemen (cth., "C" untuk tatasusunan aksara). Seterusnya, "@," tanda penyertaan di mana-mana, dilampirkan, membuka jalan untuk kod cincang identiti tatasusunan untuk didedahkan.
Pilihan reka bentuk yang ingin tahu ini, sering dilabelkan sebagai "kesilapan" dalam sejarah pemupukan Java , boleh dikaitkan dengan saling bergantung yang rumit dalam seni bina dalamannya. Walau bagaimanapun, terdapat ketenangan apabila mengetahui bahawa Arrays.toString() alternatif menawarkan suar kejelasan, menghasilkan rentetan yang boleh dipercayai yang menangkap intipati tatasusunan secara ringkas.
Meneroka alam keistimewaan Java yang lebih luas, ia patut menyelidikinya. wacana berwawasan yang dikaitkan dalam respons yang disediakan. Di sana, khazanah "kesilapan" lain menanti, menawarkan pencerahan lebih lanjut tentang kedalaman labirin cara Jawa yang penuh teka-teki.
Atas ialah kandungan terperinci Mengapakah Kaedah `toString()` Java untuk Array Menghasilkan Output Tidak Boleh Dibaca?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!