Rumah  >  Artikel  >  Java  >  Strim API dalam Java 8: Cara menapis elemen dalam koleksi menggunakan kaedah penapis().

Strim API dalam Java 8: Cara menapis elemen dalam koleksi menggunakan kaedah penapis().

WBOY
WBOYasal
2023-08-01 08:43:483399semak imbas

API Strim dalam Java 8: Cara menggunakan kaedah penapis() untuk menapis elemen dalam koleksi

Pengenalan:
Java 8 memperkenalkan API Strim, yang memberikan kami cara yang lebih mudah dan cekap untuk memproses koleksi. Stream ialah lapisan abstraksi baharu yang disediakan oleh Java 8, yang membolehkan kami memproses pelbagai data dalam cara pengaturcaraan berfungsi. Dalam API Strim, kaedah penapis() ialah salah satu kaedah yang sangat berguna, yang boleh digunakan untuk menapis elemen dalam koleksi. Dalam artikel ini, kami akan melihat dengan lebih mendalam kaedah penapis() dan meneroka penggunaan serta contohnya.

1. Apakah kaedah penapis() Kaedah penapis() ialah kaedah operasi perantaraan dalam API Strim. Ia menerima antara muka berfungsi Predikat sebagai parameter, yang digunakan untuk menapis elemen dalam koleksi. Antara muka Predikat mentakrifkan kaedah ujian(T t), yang digunakan untuk menilai secara bersyarat parameter yang diberikan dan mengembalikan nilai Boolean. Kaedah penapis() menghantar setiap elemen dalam koleksi sebagai parameter kepada kaedah ujian() Predikat Jika benar dikembalikan, elemen itu dikekalkan, jika tidak, ia dibuang.

2. Cara menggunakan kaedah penapis()

Untuk menggunakan kaedah penapis(), anda perlu mencipta koleksi dahulu dan kemudian menukarnya kepada Strim. Kemudian panggil kaedah penapis() dan gunakan antara muka berfungsi Predikat sebagai parameter. Kaedah penapis() akan mengembalikan Strim baharu yang mengandungi elemen yang memenuhi kriteria. Akhir sekali, proses Stream baharu ini menggunakan kaedah operasi terminal.

Berikut ialah kod sampel yang menunjukkan penggunaan kaedah penapis():

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class FilterExample {
    public static void main(String[] args) {
        List<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(4);
        numbers.add(5);

        // 使用filter()方法筛选偶数
        List<Integer> evenNumbers = numbers.stream()
                .filter(n -> n % 2 == 0)
                .collect(Collectors.toList());

        System.out.println("偶数列表:" + evenNumbers);
    }
}

Dalam contoh di atas, kami mula-mula mencipta objek Senaraic0f559cc8d56b43654fcbe4aa9df7b4a Kemudian kami menukar objek Senarai ini kepada objek Strim dan menggunakan kaedah penapis() untuk menapis nombor genap. Dalam parameter kaedah penapis(), kami menggunakan ungkapan Lambda n -> Akhir sekali, kami menggunakan kaedah collect() untuk menukar hasil yang ditapis menjadi objek Senarai dan mencetaknya.

Hasil output ialah: "Senarai nombor genap: [2, 4]"

3. Senario aplikasi kaedah penapis()

Kaedah penapis() mempunyai banyak senario aplikasi dalam pembangunan sebenar. Berikut ialah beberapa senario biasa:

    Tapis elemen yang memenuhi syarat tertentu. Sebagai contoh, tapis semua pelajar yang berumur lebih daripada 18 tahun daripada senarai pelajar.
  1. List<Student> adults = students.stream()
            .filter(s -> s.getAge() > 18)
            .collect(Collectors.toList());
    Tapis julat elemen tertentu. Sebagai contoh, tapis semua nombor yang lebih besar daripada atau sama dengan 10 dan kurang daripada atau sama dengan 20 daripada senarai nombor.
  1. List<Integer> range = numbers.stream()
            .filter(n -> n >= 10 && n <= 20)
            .collect(Collectors.toList());
    Tapis elemen yang tidak kosong. Sebagai contoh, tapis semua rentetan bukan kosong daripada senarai rentetan.
  1. List<String> nonEmptyStrings = strings.stream()
            .filter(s -> s != null && !s.isEmpty())
            .collect(Collectors.toList());
Ringkasan: Kaedah

filter() ialah kaedah yang sangat biasa dalam API Strim, yang boleh membantu kami menapis elemen dalam koleksi dengan cekap. Dengan menggunakan kaedah penapis(), kami boleh memproses data dengan cara yang ringkas dan elegan. Saya harap artikel ini akan membantu anda memahami penggunaan kaedah penapis() dan boleh digunakan secara fleksibel dalam projek sebenar.

Atas ialah kandungan terperinci Strim API dalam Java 8: Cara menapis elemen dalam koleksi menggunakan kaedah penapis().. 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