Rumah >Java >javaTutorial >Bagaimana untuk Cekap Menentukan Kehadiran Objek dalam Senarai Berdasarkan Nilai Medan di Jawa?

Bagaimana untuk Cekap Menentukan Kehadiran Objek dalam Senarai Berdasarkan Nilai Medan di Jawa?

Barbara Streisand
Barbara Streisandasal
2024-11-03 00:19:29644semak imbas

How to Efficiently Determine Object Presence in a List Based on Field Value in Java?

Dengan Cekap Menentukan Kehadiran Objek dalam Senarai Berdasarkan Nilai Medan

Apabila bekerja dengan objek kompleks yang disimpan dalam Senarai, ia menjadi perlu untuk memastikan kehadiran mereka berdasarkan nilai bidang tertentu. Walaupun kaedah tradisional melibatkan gelung berulang, Java menawarkan alternatif yang lebih cekap.

Menggunakan Strim

Java 8 memperkenalkan strim, mekanisme yang berkuasa untuk memproses koleksi. Menggunakan strim, anda boleh menyemak kehadiran objek seperti berikut:

<code class="java">public boolean containsName(final List<MyObject> list, final String name){
    return list.stream().filter(o -> o.getName().equals(name)).findFirst().isPresent();
}</code>

Di sini, strim ditapis untuk memilih objek yang kaedah getName() mengembalikan nilai nama yang diingini. Operasi findFirst() mengembalikan pilihan, dan semakan isPresent() mengesahkan statusnya yang tidak kosong, menunjukkan kehadiran objek dalam senarai.

Pendekatan aliran alternatif:

<code class="java">public boolean containsName(final List<MyObject> list, final String name){
    return list.stream().anyMatch(o -> name.equals(o.getName()));
}</code>

The kaedah anyMatch kembali benar jika mana-mana elemen dalam senarai sepadan dengan predikat yang ditentukan (perbandingan nilai medan).

Contoh Penggunaan

Kaedah ini boleh digunakan untuk melaksanakan operasi bersyarat:

<code class="java">public void perform(final List<MyObject> list, final String name){
    list.stream().filter(o -> o.getName().equals(name)).forEach(
            o -> {
                // Perform operations on matching objects
            }
    );
}</code>

Dengan menggunakan strim, anda boleh menyemak kehadiran objek dengan cekap dalam senarai berdasarkan nilai medan, mengoptimumkan prestasi kod dan kebolehselenggaraan.

Atas ialah kandungan terperinci Bagaimana untuk Cekap Menentukan Kehadiran Objek dalam Senarai Berdasarkan Nilai Medan di Jawa?. 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