Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Meratakan Senarai Bersarang dengan Cekap dalam Java 8?

Bagaimanakah Saya Boleh Meratakan Senarai Bersarang dengan Cekap dalam Java 8?

Patricia Arquette
Patricia Arquetteasal
2024-12-20 02:58:09386semak imbas

How Can I Efficiently Flatten a Nested List in Java 8?

Meratakan Senarai Bersarang di Java 8

Diberikan Senarai> dengan senarai yang berpotensi bersarang, anda mungkin menghadapi keperluan untuk menggabungkannya menjadi satu Senarai yang mengekalkan susunan lelaran asal. Untuk mencapai ini dengan cekap dalam Java 8, pertimbangkan pendekatan berikut:

Menggunakan flatMap dan Collectors

Gunakan kuasa operasi FlatMap Java 8 untuk meratakan senarai bersarang menjadi aliran tunggal. Proses ini melibatkan penukaran setiap senarai dalaman kepada strim menggunakan List::stream dan kemudian meratakannya menggunakan flatMap.

Untuk mengekalkan susunan unsur asal, anda boleh mengumpul hasil menggunakan Collectors.toList(), yang menghasilkan senarai baharu daripada strim yang diratakan, memastikan susunan elemen dikekalkan.

Kod Contoh:

List<List<Object>> list = ...; // Initialize your nested list

List<Object> flat = list.stream()
        .flatMap(List::stream)
        .collect(Collectors.toList());

Kod ini mula-mula menukar senarai bersarang menjadi strim, meratakannya menjadi satu strim menggunakan FlatMap dan akhirnya mengumpulkan hasilnya ke dalam Senarai dipanggil rata, yang mengandungi semua objek daripada senarai bersarang asal dalam susunan lelaran yang sama.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meratakan Senarai Bersarang dengan Cekap dalam Java 8?. 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