Streams মধ্যম

একটি গ্রুপিং কালেক্টরের (grouping collector) ভিতরে ফ্ল্যাটেন (flatten) করতে flatMapping() ব্যবহার করুন।

✕ Java 8
// Flatten within a grouping collector
// Required complex custom collector
Map<String, Set<String>> tagsByDept =
    // no clean way in Java 8
✓ Java 9+
var tagsByDept = employees.stream()
    .collect(groupingBy(
        Emp::dept,
        flatMapping(
            e -> e.tags().stream(),
            toSet()
        )
    ));
এই কোডে সমস্যা দেখছেন? আমাদের জানান।
🧩

কম্পোজেবল (Composable)

groupingBy এর ভিতরে একটি ডাউনস্ট্রিম কালেক্টর হিসাবে কাজ করে।

📐

সিঙ্গেল পাস (One Pass)

একটি সিঙ্গেল স্ট্রিম ট্র্যাভার্সালে ফ্ল্যাটেন এবং গ্রুপ করুন।

🔗

নেস্টেবল (Nestable)

অন্যান্য ডাউনস্ট্রিম কালেক্টরগুলোর সাথে একত্রিত করুন।

পুরনো পদ্ধতি
নেস্টেড flatMap
আধুনিক পদ্ধতি
flatMapping()
JDK থেকে
9
কঠিনতা
মধ্যম
Collectors.flatMapping()
উপলব্ধ

JDK 9 (সেপ্টেম্বর 2017) থেকে ব্যাপকভাবে উপলব্ধ

Collectors.flatMapping() একটি ওয়ান-টু-মেনি (one-to-many) ম্যাপিংকে ডাউনস্ট্রিম কালেক্টর হিসাবে প্রয়োগ করে। এটি Stream.flatMap()-এর কালেক্টর ইকুইভ্যালেন্ট (equivalent) — groupingBy বা partitioningBy-এর ভিতরে ব্যবহার করার জন্য উপযোগী।