Rumah >Java >javaTutorial >Bagaimana untuk Menukar Array `panjang` Primitif kepada `Senarai` di Jawa?

Bagaimana untuk Menukar Array `panjang` Primitif kepada `Senarai` di Jawa?

DDD
DDDasal
2024-10-30 18:15:02859semak imbas

How to Convert a Primitive `long` Array to a `List` in Java?

Cara Menukar Tatasusunan panjang Primitif kepada Senarai Panjang

Apabila bekerja dengan tatasusunan Java, adalah perkara biasa untuk menghadapi senario yang anda perlukan untuk menukar tatasusunan primitif kepada senarai objek. Soalan khusus ini tertumpu kepada menukar tatasusunan long primitif kepada Senarai Long.

Percubaan Yang Tidak Berjaya

Percubaan awal untuk menukar tatasusunan menggunakan Arrays.asList( input) gagal kerana kaedah ini menjangkakan tatasusunan objek sebagai hujah. Memandangkan jenis primitif Java seperti long bukan objek, percubaan untuk menghantar tatasusunan primitif mengakibatkan ralat penyusunan.

Penyelesaian Menggunakan Strim

Dengan Java 8, strim menyediakan cara yang cekap untuk mengendalikan penukaran tersebut. Menggunakan API aliran, penukaran boleh dicapai seperti berikut:

<code class="java">long[] arr = { 1, 2, 3, 4 };
List<Long> list = Arrays.stream(arr)
    .boxed()
    .collect(Collectors.toList());</code>

Penjelasan:

  • Arrays.stream(arr) mencipta aliran primitif longs.
  • boxed() ialah operasi strim yang mengubah setiap long primitif kepada objek Long.
  • collect(Collectors.toList()) mengumpul objek Long ke dalam senarai.

Pendekatan ini memastikan tatasusunan panjang primitif ditukar kepada Senarai Panjang, memenuhi keperluan untuk mempunyai koleksi rujukan objek.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Array `panjang` Primitif kepada `Senarai` di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn