Rumah > Java > javaTutorial > Bagaimana untuk Menukar Senarai dengan Cekap kepada int[] dalam Java Menggunakan Strim?

Bagaimana untuk Menukar Senarai dengan Cekap kepada int[] dalam Java Menggunakan Strim?

DDD
Lepaskan: 2024-12-23 20:20:24
asal
806 orang telah melayarinya

How to Efficiently Convert a List to an int[] in Java Using Streams?

Penukaran Senarai yang Cekap to int[] Menggunakan Java Stream

Masalah:

Pembangun menghadapi cabaran apabila cuba menukar Senarai kepada int[] dalam Java. List.toArray() menghasilkan Objek[], yang tidak boleh dihantar terus ke Integer[] atau int[].

Penyelesaian Awal:

Penyelesaian yang biasa digunakan melibatkan lelaran ke atas senarai menggunakan gelung untuk menetapkan setiap elemen secara manual kepada indeks yang sepadan dalam int[] tatasusunan.

Peningkatan Strim Java 8:

Walau bagaimanapun, Java 8 memperkenalkan peningkatan strim yang menyediakan pendekatan yang lebih ringkas dan cekap. Dengan menggunakan IntStreams, yang direka khusus untuk mengendalikan jenis int primitif, kami boleh menyelaraskan proses penukaran:

Penyelesaian dengan mapToInt() dan Lambda:

int[] example1 = list.stream().mapToInt(i -> i).toArray();
Salin selepas log masuk

MapToInt () kaedah mengubah setiap elemen Stream kepada int, membolehkan penukaran kepada IntStream. Ungkapan lambda (i -> i) hanya menyahkotak Integer.

Penyelesaian dengan mapToInt() dan Rujukan Kaedah:

Sebagai alternatif, kita boleh menggunakan rujukan kaedah :

int[] example2 = list.stream().mapToInt(Integer::intValue).toArray();
Salin selepas log masuk

Fikiran Proses:

Stream#toArray() mengembalikan Object[] secara lalai, jadi kami memanfaatkan mapToInt() untuk menukar elemen Integer kepada int. IntStreams menyediakan kaedah native toArray() yang menghasilkan tatasusunan int[].

Dengan menggunakan IntStreams, kami mengelakkan keperluan untuk unboxing tambahan atau penukaran eksplisit kepada Integer[] sebelum menghantar ke int[]. Pengoptimuman ini menyelaraskan proses penukaran, mempertingkatkan kepekatan dan kecekapan kod.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Senarai dengan Cekap kepada int[] dalam Java Menggunakan Strim?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan