Cara Menukar int[] kepada Integer[] untuk Kekunci Peta
Apabila bekerja dengan Koleksi dan Peta di Java, adalah penting untuk menjadi sedar tentang batasan jenis data primitif. Dalam situasi tertentu, seperti apabila anda perlu menyimpan tatasusunan integer sebagai kunci dalam Peta, tatasusunan int[] primitif tidak boleh digunakan secara langsung kerana kunci Peta mestilah objek. Di sinilah penukaran int[] kepada Integer[] berguna.
Dalam kes khusus anda, anda mempunyai set data besar tatasusunan int[] dan ingin mencipta Map
Java 8 (Satu Baris)
Java 8 menyediakan kaedah mudah untuk menukar int[] kepada Integer[] menggunakan strim:
<code class="java">int[] data = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // To boxed array Integer[] boxedData = Arrays.stream(data).boxed().toArray(Integer[]::new);</code>
Menggunakan Pengumpul
Sebagai alternatif, anda boleh menggunakan Pengumpul untuk menukar int[] kepada Senarai
<code class="java">int[] data = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // To boxed list List<Integer> boxedList = Arrays.stream(data).boxed().collect(Collectors.toList()); // To boxed array Integer[] boxedData = boxedList.toArray(new Integer[boxedList.size()]);</code>
Nota:
Walaupun mungkin untuk menukar int[] kepada Integer[] untuk digunakan sebagai kunci peta, adalah penting untuk mempertimbangkan kelemahan menggunakan tatasusunan sebagai kunci. Ini termasuk:
Dalam kebanyakan kes, disyorkan untuk menggunakan objek tersuai atau kelas pembalut sebagai kunci peta dan bukannya tatasusunan.
Atas ialah kandungan terperinci Bagaimana untuk Menukar `int[]` kepada `Integer[]` untuk Kekunci Peta di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!