10 Aralık 2020 Perşembe

Stream.takeWhile metodu

Giriş
Not: dropWhile yazısına bakabilirsiniz,  skip yazısına bakabilirsiniz

Açıklaması şöyle.
takeWhile(): Returns a stream containing the elements of the stream up to the first element that does not match the specified predicate.
Java 9 ile geliyor. Belli bir koşuldan sonra Stream'i dolaşmayı durdurur. Bu yüzden takeWhile() stateful bir metod. Açıklaması şöyle. Bu yüzden filter() metodundan farklıdır
This is a short-circuiting stateful intermediate operation.
Örnek
Şöyle yaparız
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
List<Integer> result = numbers.stream().takeWhile(n -> n < 4).collect(Collectors.toList());
System.out.println(result); // prints [1, 2, 3]

Örnek
Şöyle yaparız.
List<Integer> integer = Stream.generate(new Supplier<Integer>() {
    int i = 0 ;

    @Override
    public Integer get() {
        return ++i;
    }
}).takeWhile(j -> j < 5).limit(10).collect(Collectors.toList());




Hiç yorum yok:

Yorum Gönder