Stream API

RMAG news

Java 8 Stream API, işlerimizi kolaylaştıran bir araçtır ve verimli ve temiz uygulamalar oluşturmak için birçok yeni model getirir. Stream API, liste ve dizileri işlemek için işlevsel operasyonlar sağlar. İşte bazı önemli Stream API operasyonları:

Filter (Filtreleme):

filter metodu, bir listeyi veya diziyi belirli bir koşula göre kısıtlamamıza olanak tanır. Örneğin, kullanıcı listesindeki bazı kriterlere göre listeyi indirgeyebiliriz:

List<User> userList = Arrays.asList(user1, user2, user3);
userList.stream()
.filter(user -> user.getSurname().contains(“a”) && user.getAge().equals(65))
.collect(Collectors.toList())
.forEach(System.out::println);

Yukarıdaki örnekte, isminde ‘a’ harfi geçenleri ve yaşı 65 olan kullanıcıları filtreleyerek ekrana yazdırmak istedik.

Sorted (Sıralama):

sorted metodu, veri setini belirli parametrelere göre sıralamamıza olanak tanır. Örneğin, kitapların sayfa sayısına göre küçükten büyüğe sıralanışını aşağıdaki gibi yapabiliriz:

List<Book> bookList = Arrays.asList(book1, book2, book3);
List<Book> bookSortedListByPage = bookList.stream()
.sorted(Comparator.comparingInt(Book::getPage))
.collect(Collectors.toList());
System.out.println(bookSortedListByPage);

Burada Comparator.comparingInt(Book::getPage) ile kitapların sayfa sayısına göre sıralama yapacağımızı belirttik.

Map (Dönüşüm):

map metodu, stream içerisindeki her bir nesneye özgü işlemler yapmamıza olanak sağlar. Örneğin, rakamların karesini almak için kullanabiliriz:

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> squares = numbers.stream()
.map(n -> n * n)
.collect(Collectors.toList());
System.out.println(squares);

Yukarıdaki örnekte, her rakamın karesini alarak yeni bir liste oluşturduk.

Java Stream API, veri işlemlerini daha anlaşılır ve temiz bir şekilde ifade etmemize yardımcı olur. Bu operasyonlar, kodunuzu daha okunaklı ve etkili hale getirir. 🚀

Kaynaklar:

Java 8 Stream Api Nedir? Nasıl Kullanılır? ¹

Java 8 – Stream API (Filter, Sorted, Map, Match, Reduce) ²

Stack Overflow: How does sorted() operation work if a filter is placed right after? ³

Kaynak: Bing ile konuşma, 17.05.2024
(1) Java 8 Stream Api Nedir ? Nasıl Kullanılır ? ( filter, sorted, map …. https://medium.com/@muhammetenesakcayir/java-8-stream-api-32dd3e9aa30f.
(2) Java 8 – Stream API (Filter, Sorted, Map, Match, Reduce). https://www.mobilhanem.com/stream-api-filter-sorted-map-match-reduce/.
(3) java – Stream API – How does sorted () operation works if a filter …. https://stackoverflow.com/questions/72118729/stream-api-how-does-sorted-operation-works-if-a-filter-is-placed-right-aft.
(4) Java 8 – Stream API – KodEdu. https://kodedu.com/2014/10/java-8-stream-api/.
(5) Difference between map and filter on a java collection stream. https://stackoverflow.com/questions/37154380/difference-between-map-and-filter-on-a-java-collection-stream.
(6) github.com. https://github.com/LinZiYU1996/Learning-Java/tree/a0d9f538c9d373c3a93ccd890006ce0e5e1f2d5d/MyNotes%2FJDK_8%2Fchapter_5%2Fc_5_2%2Fc_5_2_2%2FTest_5_2_1.java.