Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Java 9 Stream API Enhancements: takeWhile dan Lainnya

Streams diperkenalkan dalam Java untuk membantu pengembang melakukan operasi agregat dari urutan objek. Dengan Java 9, beberapa metode tambahan ditambahkan untuk membuat streams lebih baik.

takeWhile(Predicate Interface)

Sintaks

 default Stream<T> takeWhile(Predicate<? super T> predicate) 

Metode takeWhile mengambil semua nilai sampai predicate mengembalikan false. Ini mengembalikan, dalam hal stream terurut, stream yang terdiri dari awalan terpanjang elemen yang diambil dari stream ini yang cocok dengan predicate yang diberikan.

Contoh

 import java.util.stream.Stream; public class Tester { public static void main(String[] args) { Stream.of("a","b","c","","e","f").takeWhile(s->!s.isEmpty()) .forEach(System.out::print); } } 

Output

Metode takeWhile mengambil semua nilai a, b, dan c, lalu ketika string kosong, berhenti mengeksekusi.

 abc 

dropWhile(Predicate Interface)

Sintaks

 default Stream<T> dropWhile(Predicate<? super T> predicate) 

Metode dropWhile membuang semua nilai di awal sampai predicate mengembalikan true. Ini mengembalikan, dalam hal stream terurut, stream yang terdiri dari elemen yang tersisa dari stream ini setelah membuang awalan terpanjang elemen yang cocok dengan predicate yang diberikan.

Contoh

 import java.util.stream.Stream; public class Tester { public static void main(String[] args) { Stream.of("a","b","c","","e","f").dropWhile(s-> !s.isEmpty()) .forEach(System.out::print); System.out.println(); Stream.of("a","b","c","","e","","f").dropWhile(s-> !s.isEmpty()) .forEach(System.out::print); } } 

Output

Metode dropWhile membuang nilai a, b, dan c, lalu ketika string kosong, mengambil semua nilai.

 ef ef 

iterate

Sintaks

 static <T> Stream<T> iterate(T seed, Predicate<? super T> hasNext, UnaryOperator<T> next) 

Metode iterate sekarang memiliki predicate hasNext sebagai parameter yang menghentikan loop setelah predicate hasNext mengembalikan false.

Contoh

 import java.util.stream.IntStream; public class Tester { public static void main(String[] args) { IntStream.iterate(3, x -> x < 10, x -> x+ 3).forEach(System.out::println); } } 

Output

 3 6 9 

ofNullable

Sintaks

 static <T> Stream<T> ofNullable(T t) 

Metode ofNullable diperkenalkan untuk mencegah NullPointerExceptions dan untuk menghindari pengecekan null untuk streams. Metode ini mengembalikan Stream sekuensial yang berisi satu elemen, jika non-null, sebaliknya mengembalikan Stream kosong.

Contoh

 import java.util.stream.Stream; public class Tester { public static void main(String[] args) { long count = Stream.ofNullable(100).count(); System.out.println(count); count = Stream.ofNullable(null).count(); System.out.println(count); } } 

Output

 1 0 

java

  1. Menguasai Operator Java: Tipe, Sintaks, & Contoh Praktis
  2. Komentar Java: Tipe, Penggunaan, dan Best Practices
  3. Menguasai Java Enhanced For Loop: Sintaks, Contoh, dan Best Practices
  4. Menguasai String Java: Pembuatan, Metode, dan Best Practices
  5. Menguasai Antarmuka Java: Konsep, Implementasi, dan Praktik Terbaik
  6. Menguasai Kelas Dalam Anonim Java: Definisi, Sintaks, dan Contoh Praktis
  7. Menguasai Java Try-with-Resources: Manajemen Sumber Daya Otomatis Dijelaskan
  8. Anotasi Java Dijelaskan: Jenis, Penempatan, dan Contoh Praktis
  9. Pernyataan Java: Panduan Praktis untuk Mendeteksi Bug dan Memastikan Keandalan Kode
  10. Java 9 (JDK 9): Fitur Utama dan Manfaat