Rumah > Java > javaTutorial > Bagaimana untuk Menukar ArrayList Integer kepada Array int Primitif di Jawa?

Bagaimana untuk Menukar ArrayList Integer kepada Array int Primitif di Jawa?

Patricia Arquette
Lepaskan: 2024-12-17 07:56:25
asal
964 orang telah melayarinya

How to Convert an ArrayList of Integers to a Primitive int Array in Java?

Menukar ArrayList of Integer to Primitive int Array

Dalam Java, adalah mungkin untuk menukar ArrayList yang mengandungi objek Integer kepada tatasusunan int[] primitif. Walau bagaimanapun, cubaan menghantar terus ArrayList ke int[], seperti yang ditunjukkan di bawah, akan mengakibatkan ralat masa kompilasi:

List<Integer> x = new ArrayList<Integer>();
int[] n = (int[])x.toArray(int[x.size()]);
Salin selepas log masuk

Untuk berjaya menukar ArrayList kepada tatasusunan primitif, terdapat beberapa cara untuk mendekatinya:

Menggunakan toArray dengan Primitive Array

Satu kaedah adalah dengan menggunakan kaedah toArray bagi ArrayList dengan tatasusunan jenis primitif yang diingini sebagai hujah. Sebagai contoh:

List<Integer> x = new ArrayList<Integer>();
int[] n = new int[x.size()];
x.toArray(n);
Salin selepas log masuk

Pendekatan ini melibatkan mencipta tatasusunan primitif baharu dengan saiz yang sesuai dan menghantarnya ke toArray untuk mengisi tatasusunan dengan nilai Integer.

Menggunakan Java 8 Streams

Jika menggunakan Java 8 atau lebih baru, anda boleh menukar ArrayList kepada tatasusunan primitif menggunakan stream() kaedah dengan mapToInt:

List<Integer> x = new ArrayList<Integer>();
int[] n = x.stream().mapToInt(Integer::intValue).toArray();
Salin selepas log masuk

Pendekatan ini menggunakan strim untuk lelaran melalui ArrayList, memetakan setiap objek Integer kepada nilai int primitifnya dan mengumpul hasilnya ke dalam tatasusunan menggunakan toArray.

Lain-lain Pertimbangan

Apabila menukar ArrayList yang mengandungi objek Integer kepada primitif tatasusunan, adalah penting untuk dipertimbangkan:

  • Nilai Null: Jika ArrayList mengandungi sebarang nilai null, ia akan diabaikan daripada tatasusunan yang ditukar.
  • Saiz: Tatasusunan yang ditukar akan mempunyai saiz yang sama dengan ArrayList.
  • Tinju/Nyah Tinju: Apabila menukar antara jenis primitif dan objek, operasi tinju dan nyah kotak adalah perlu. Ini boleh menyebabkan beberapa overhed prestasi.

Atas ialah kandungan terperinci Bagaimana untuk Menukar ArrayList Integer kepada Array int Primitif di Jawa?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan