Java 8 Stream – concat Nedir? Nasıl Kullanılır?
Stream concat operasyonu iki veya daha fazla Stream’i birleştirip bir Stream yapmamızsa olanak sağlamaktadır. Birleştirilecek Streamlerin aynı veri tipinde olması önemlidir.
Stream concat operasyonu iki veya daha fazla Stream’i birleştirip bir Stream yapmamızsa olanak sağlamaktadır. Birleştirilecek Streamlerin aynı veri tipinde olması önemlidir.
Stream Map Nedir? Java 8 Stream içerisinde yer alan map metotu parametre olarak java util function paketi içerisinde yer alan Function interface’i almaktadır. Stream içerisinde ki elemanları başka elamanlara dönüştürmek veya üzerlerinde işlem yapmak için Map kullanılmaktadır. Stream Map kullanıldıktan sonra Stream’in veri tipi değişebilir, elemanları String olan bir Stream IntStream haline çevrilebilir. Map kullanıldğında …
Bu yazımda Java 8 ile birlikte gelen lambda expression ile birlikte, Stream içerisinde yoğun olarak kullanılan java.util.function içerisinde yer alan interfacesleri inceleyeceğiz. Functional Interface Nedir? Sadece 1 tane abstract metotu bulunan interface’lere Functional Interface adı verilir. Bu interface Lambda Expression ile birlikte kullanılabilirdir. Bu yüzden farklı bir isme sahip olmuştur. Functional Interface’ler Java 8’in fonksiyonel …
Java Util Function Paketi ve Lambda Fonksiyonlar Read More »
Parametre alarak sonuç döndüren yapılardır. Lambda ile kullanıldığında apply metotu override edilir. Parametrenin cinsi ve return edilecek olan değerin cinsi farklı veya anı tipte olacak şekilde belirlenebilir. Function Örnekleri Function Çeşitleri BiFunction<T,U,R>: İki parametre alan fonksiyondur. DoubleFunction<R> Aldığı parametresi double tipindedir. DoubleToIntFunction: Double parametre alır ve int tipinde return değeri verir. DoubleToLongFunction: Double tipinde parametre …
Parametre alarak o parametre ile aynı veri tipinde sonuç üretirler. Lambda ile kullanıldığında applye metotu override edilmektedir. Java Util Function paketi icersindeki Function interfacesine benzerlik göstermektedir. Operator Çeşitleri UnaryOperator<T>: Tek paremetre alır ve sonuç paremetreyle aynı tiptedir BinaryOperator<T>: Aynı cins iki parametre alır ve sonuç aynı tiptedir. DoubleUnaryOperator: Tek bir double parametre alır, ve double …
Supplier Ne için Kullanılır? Supplier parametre almaz ve yalnızca değer döndürür. Lambda ile kullanırken, abstract metotu olan get’i override ederiz. Saati getiren bir fonksiyon, veya rastgele sayı üreten bir fonksiyon supplier için örnek verilebilir. Supplier Örnekleri Supplier Çeşitleri BooleanSupplier: Boolean değer döndürür DoubleSupplier: Double değer döndürür. IntSupplier: Integer değer döndürür LongSupplier: Long değer döndürür.
Consumer void fonksiyon gibi düşünülebilir, aldığı paremetre ile sonuç üretmeden işlem yapar. System.out.println kullanarak ekrana yazma Consumer’in kullanılabileceği en iyi örnektir. Lambda expression kullanarak consumerin abstract metotu olan accepti ovveride ederiz. Consumer içerisinde yer alan andThen metotu kullanarak iki tane Consumer zincirlenebilir ve accept metotu çağrıldığında sıralı olarak çalışırlar. Consumer Çeşitleri BiConsumer: Bir yerine iki …
Stream Dizi ve listelerimizin, elamanları üzerinde işlem yapmamıza olanak sağlar. Çeşitli hazır fonksiyonları sayesinde listemizdeki bütün elemanları işledikten sonra sonuç üretebilir. Stream dizi ve liste gibi içerisinde veri saklamaz fakat veri saklayan yapıları kullanarak üzerinde işlem yapar bu yüzden orjinal verilerimizi değiştirmez. Stream içerisinde elemanlar sadece bir kez ziyaret edilir. Aynı elemanı tekrar işleme sokabilmek …
Predicate Ne için Kullanılır? Predicate Aldığı paramatereye göre boolean değer döndürmektedir. Filtreleme ve gruplama gibi operasyonlarda kullanılmaktadır. Lambda ile birlikte kullanırken abstract test metotunu override ederiz. Predicate Metotları test(T t) Lambda ile bu metot override edilir. Parametreye göre boolean sonuç üretmelidir and() İki predicate birleştirilme için kullanılır mantıksal ve ile aynı anlama gelmektedir. or() İki …