Java 8 Stream – reduce Nedir? Nasıl Kullanılır?

Java 8 Stream reduce operasyonu kaynaktaki her elemanın birleştirilerek tekil bir eleman oluşturulması işlemini görmektedir, yani eğer bir String listesini kaynak olarak kullanıyorsak bu Stringlerin birleştirilip bir adet String değişkeni üretmemiz reduce operasyonu olarak adlandırılır. Reduce yapabilmek için iki farklı parametreyi belirtmek zorundayız. İki parametreden ilki olan ilk değer parametresi Devamı…

Java 8 Stream – findAny, findFirst Nedir? Nasıl Kullanılır?

FindAny Stream içerisinde yer alan herhangi bir elemanı döndürmektedir. Burada hangi elemanın geleceği belirsizdir fakat çoğunlukla ilk elemanın dönderileceğini söyliyebiliriz. Findany Stream operasyonu kullanıldıktan sonra direk olarak Stream kaynağımızdaki veri tipinde dönüş alamayız Optional adı verilen sınıflar kullanılır. Findfirst operasyonunda ise Stream kaynağımız içerisinde yer alan ilk elemanı yine findanyde Devamı…

Java 8 Stream – noneMatch Nedir? Nasıl Kullanılır?

Stream API noneMatch Operasyonu kaynak içerisinde bulunan bütün elemanların verilen koşula uymaması gerekmektedir, eğer herhangi bir eleman bu koşula uyuyor ise false sonucu döner. NoneMatch operasyonu kaynak içerisinde ki hiçbir elemanın bu koşula uymaması anlamını taşımaktadır. Allmatch ile farkı ise bu noktadadır, allmatch bütün elemanların verilen koşula uyması gerekmekteydi. NoneMatch Devamı…

Java 8 Stream Filter Non-Terminal Operation

Java 8 Stream api ile birlikte gelen Filter Non- Terminal veya intermediate operasyondur. Filter source üzerinde eleme işlemi yapmaktadır. Verilen koşula uygun olmayan kaynak elemanları bir sonraki pipeline’ye dahil olmazlar. Böylelikle kaynak aslında bir süzgeçten geçirilmiş olur. Filter kullanımında parametre olarak Java Util Function içerisinde yer alan Predicate interface istemektedir. Devamı…

Java 8 Stream API IntStream, DoubleStream, LongStream

Stream of Primitives Stream<T> Generic Type olduğundan dolayı, Primitive değişkenlerin varolduğu bir Stream’i diğerleri gibi oluşturamayız, primitive değişkenlerin yer aldığı bir Stream oluşturmak istiyorsak bunun için özel olarak yazılmış IntStream, DoubleStream ve LongStream interface’lerini kullanabiliriz. .of Metotu kullanarak Stream Oluşturma .range .rangeClosed() Metotu Kullanarak Stream Oluşturma Range içerisinde belirtilen sayıdan Devamı…

Java 8 Stream API Stream Nasıl Yaratılır?

Stream bir interface’dir. Bu yüzden doğrudan nesnesi oluşturulamaz. Stream java.util.stream paketi altında yer almaktadır. Stream Oluşturma Yöntemleri Empty Stream Source’u empty olan bir stream döndürür. Stream return eden bir fonkisyon yazıyorsak null return etmek yerine empty Stream döndürebiliriz. Collection Üzerinden Stream Oluşturma Collection interface’inde tanımlı olan stream() metodu bütün implementasyonlarında Devamı…

Java 8 Stream API Nasıl Çalışır?

Stream kullandığımızda, kullandığımız operasyonlara göre Stream Pipeline adını verdiğimiz bir süreç yaratmış oluruz. Bir Stream Pipe’line içerisinde aşağıdaki maddelerden söz edilir. Stream için kaynak sağlıyan liste veya dizi verimiz Stream Source Stream içindeki elemanlara işlem yapan Intermediate (Non-Terminal Operation) Sonuç üretimi sağlıyan Terminal-Operation Bir Stream nesnesi oluşturmak yukarıdaki işlemleri yapmak Devamı…

Java 8 Stream API Nedir?

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. Devamı…