Stream map ve flatmap nasıl kullanılır?
Stream içinde map ve flatMap yöntemleri farklı amaçlarla kullanılır: 1. map() Yöntemi: Her bir elemente bir fonksiyon uygulayarak yeni bir stream oluşturur. ```java List<String> names = Arrays.asList("Amit", "Priya", "Raj"); List<String> upperCaseNames = names.stream() .map(String::toUpperCase) .collect(Collectors.toList()); ``` Bu örnekte, `toUpperCase` fonksiyonu kullanılarak her bir isim büyük harfe dönüştürülür. 2. flatMap() Yöntemi: İç içe geçmiş koleksiyonları veya streamleri tek bir stream'e düzleştirir. ```java List<List<String>> nestedList = Arrays.asList( Arrays.asList("Java", "Python"), Arrays.asList("JavaScript", "TypeScript") ); List<String> flattenedLanguages = nestedList.stream() .flatMap(Collection::stream) .collect(Collectors.toList()); ``` Bu örnekte, `flatMap()` her bir iç içe geçmiş listeyi bir stream'e dönüştürür ve bu stream'leri tek bir string listesine düzleştirir.
Stream map ve flatmap nasıl kullanılır?