Bagaimana untuk melaksanakan operasi berfungsi pada koleksi menggunakan Stream API dalam Java?
Dengan keluaran Java 8, Stream API telah diperkenalkan, menjadikan operasi berfungsi pada koleksi lebih ringkas dan cekap. Stream API menyediakan cara baharu untuk memproses koleksi, yang boleh beroperasi pada koleksi secara deklaratif, yang boleh mengurangkan kerumitan kod dan meningkatkan kebolehbacaan dan kebolehselenggaraan kod. Artikel ini akan memperkenalkan secara terperinci cara menggunakan API Strim dalam Java untuk melaksanakan operasi berfungsi pada koleksi.
Pertama, kita perlu memahami konsep asas API Strim. Strim mewakili jujukan elemen data, yang boleh datang daripada mana-mana sumber data, seperti tatasusunan, koleksi, dsb. Perbezaan antara Strim dan pengumpulan ialah ia tidak menyimpan data itu sendiri, tetapi data dikira atas permintaan, yang bermaksud bahawa kita boleh melakukan berbilang operasi pada data tanpa membuat koleksi baharu. API Strim menyediakan pelbagai kaedah untuk penapisan, pemetaan, pengisihan dan operasi lain pada data. Kaedah ini boleh dipanggil dalam rantai untuk membentuk aliran pemprosesan, dan akhirnya mendapat hasil yang kita inginkan.
Berikut ialah beberapa contoh untuk menunjukkan cara menggunakan API Strim untuk melaksanakan operasi berfungsi pada koleksi.
Pertama, kita boleh menggunakan kaedah penapis untuk menapis data yang memenuhi syarat. Sebagai contoh, kami mempunyai satu set integer dan kami ingin mencari elemen yang lebih besar daripada 10.
List<Integer> numbers = Arrays.asList(1, 5, 10, 15, 20); List<Integer> result = numbers.stream() .filter(n -> n > 10) .collect(Collectors.toList()); System.out.println(result); // 输出 [15, 20]
Selain menapis data, kita juga boleh menggunakan kaedah peta untuk memetakan data. Sebagai contoh, kami mempunyai koleksi rentetan dan kami ingin menukar setiap rentetan kepada huruf besar.
List<String> words = Arrays.asList("hello", "world", "Java", "stream"); List<String> result = words.stream() .map(String::toUpperCase) .collect(Collectors.toList()); System.out.println(result); // 输出 [HELLO, WORLD, JAVA, STREAM]
Selain itu, kita juga boleh menggunakan kaedah sorted untuk menyusun data. Sebagai contoh, kami mempunyai koleksi integer dan kami ingin mengisihnya daripada terkecil kepada terbesar.
List<Integer> numbers = Arrays.asList(5, 2, 10, 1, 8); List<Integer> result = numbers.stream() .sorted() .collect(Collectors.toList()); System.out.println(result); // 输出 [1, 2, 5, 8, 10]
Selain itu, Stream API juga menyediakan beberapa kaedah statistik mudah, seperti kiraan, min, maks, jumlah, dll. Sebagai contoh, kami mempunyai satu set integer dan kami ingin mengira purata mereka.
List<Integer> numbers = Arrays.asList(5, 2, 10, 1, 8); double average = numbers.stream() .mapToDouble(Integer::doubleValue) .average() .orElse(0); System.out.println(average); // 输出 5.2
Melalui contoh di atas, kita dapat melihat bahawa menggunakan API Strim boleh menjadikan kod kita lebih jelas dan ringkas. API Strim menyediakan pelbagai kaedah untuk penapisan, pemetaan, pengisihan, statistik dan operasi lain. Dengan merantai kaedah ini, kami boleh melaksanakan logik pemprosesan data yang kompleks. Pada masa yang sama, Stream API juga menyediakan sokongan untuk pemprosesan selari, yang boleh menggunakan sepenuhnya kelebihan pemproses berbilang teras dan meningkatkan kecekapan pemprosesan.
Ringkasnya, menggunakan Stream API dalam Java untuk melaksanakan operasi berfungsi pada koleksi boleh memudahkan kod kami dan meningkatkan kebolehbacaan dan kebolehselenggaraan kod. Saya berharap melalui pengenalan artikel ini, saya akan mempunyai pemahaman yang lebih baik tentang cara menggunakan API Strim. Marilah kita menggunakan sepenuhnya fungsi berkuasa yang disediakan oleh Stream API untuk meningkatkan kecekapan dalam pembangunan sebenar.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan operasi berfungsi pada koleksi menggunakan Stream API dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!