Mencetak Elemen Senarai dalam Java: Mengatasi Paparan Penunjuk Objek
Di Java, mendapatkan semula dan mencetak elemen Senarai boleh menimbulkan cabaran , membawa kepada paparan penunjuk objek dan bukannya nilai yang diingini. Isu ini boleh timbul apabila kod cetakan menggunakan sintaks System.out.println(list.get(i)).
Untuk menangani perkara ini, fahami bahawa kaedah cetakan Java biasanya lalai untuk mencetak rujukan objek (penunjuk). Untuk mendapatkan nilai sebenar, adalah penting bahawa objek dalam Senarai melaksanakan kaedah toString() tersuai yang mengatasi pelaksanaan lalai. Kaedah ini harus mengembalikan perwakilan rentetan yang sesuai bagi nilai objek.
Penyelesaian:
Penyelesaian yang cekap untuk mencetak elemen Senarai ialah menggunakan Arrays.toString( list.toArray()). Sintaks ini menggabungkan kaedah list.toArray(), yang menukarkan Senarai kepada tatasusunan, dengan kaedah Arrays.toString(), yang mengembalikan perwakilan rentetan tatasusunan. Pendekatan ini secara automatik menggunakan kaedah custom toString() bagi objek dalam tatasusunan, menghasilkan output yang diingini.
Contoh:
Pertimbangkan contoh berikut:
<code class="java">import java.util.ArrayList; import java.util.Arrays; public class ListPrinting { public static void main(String[] args) { // Create a List of integers List<Integer> numbers = new ArrayList<>(); numbers.add(1); numbers.add(2); numbers.add(3); // Attempt to print the List elements using the default syntax for (int i = 0; i < numbers.size(); i++) { System.out.println(numbers.get(i)); } // Print the List elements using Arrays.toString() System.out.println(Arrays.toString(numbers.toArray())); } }</code>
Dalam contoh ini, gelung untuk pertama mencetak penunjuk objek objek Integer dalam Senarai, manakala baris kedua mencetak nilai sebenar, "[1, 2, 3]". Ini menunjukkan keberkesanan menggunakan pendekatan Arrays.toString().
Atas ialah kandungan terperinci Bagaimana untuk Mencetak Elemen Senarai Java Tanpa Menunjukkan Penunjuk Objek?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!