Rumah  >  Artikel  >  Java  >  Bagaimana untuk Memecah atau Kembali dari Java 8 Stream forEachLike Iteration?

Bagaimana untuk Memecah atau Kembali dari Java 8 Stream forEachLike Iteration?

Linda Hamilton
Linda Hamiltonasal
2024-10-24 01:42:02513semak imbas

How to Break or Return from Java 8 Stream forEachLike Iteration?

Memecah atau Mengembalikan daripada Java 8 Stream forEach

Seperti lelaran luaran yang menggunakan dipertingkatkan untuk setiap gelung, lelaran dalaman dengan ungkapan lambda Java 8 memerlukan pendekatan yang berbeza untuk memecahkan atau kembali. Memecahkan keluar daripada gelung untuk-setiap boleh dicapai menggunakan pernyataan putus atau dengan mengembalikan objek semasa.

Dalam kes strim forEach, tiada putus atau pulangan boleh digunakan. Sebabnya ialah forEach ialah operasi terminal, bermakna ia melaksanakan kesan sampingan pada setiap elemen dan tidak mengembalikan sebarang nilai.

Alternatif untuk Memecah atau Mengembalikan daripada Strim forEach

Sebaliknya, seseorang harus mempertimbangkan untuk menggunakan kaedah strim lain yang menawarkan fungsi berbeza:

  • penapis(): Untuk menapis elemen yang tidak memenuhi syarat yang ditetapkan dan dapatkan strim baharu yang mengandungi elemen yang ditapis.
  • findFirst(): Untuk mendapatkan semula elemen pertama yang memenuhi predikat tertentu. Jika tiada elemen sepadan, ia mengembalikan Pilihan kosong.
  • anyMatch(): Untuk menyemak sama ada mana-mana elemen sepadan dengan predikat tertentu.
  • collect(): Untuk mengurangkan strim kepada satu nilai, koleksi atau hasil lain.

Kod Contoh

Menggunakan penapis() untuk mencari elemen pertama yang memenuhi syarat:

<code class="java">Optional<SomeObject> result =
    someObjects.stream().filter(obj -> some_condition_met).findFirst();</code>

Menggunakan anyMatch() untuk menentukan sama ada mana-mana elemen memenuhi predikat:

<code class="java">boolean result = someObjects.stream().anyMatch(obj -> some_condition_met);</code>

Atas ialah kandungan terperinci Bagaimana untuk Memecah atau Kembali dari Java 8 Stream forEachLike Iteration?. 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