abbasalim
abbasalim
خواندن ۱ دقیقه·۲ ماه پیش

flatMap در کاتلین چه کاربردی داره؟!



فرض کنید لازم داریم که تمامی کلماتی که در اسامی کاربرانمون وارد شده رو جداجدا به دست بیاریم.

مثلا یک لیست از طرف حسابها داریم که اسامیشون اینجوری هست:

علی کمالی

عباس علی ملاحسینی

حسین شاکر اردکانی

ما خروجی این شکلی می خواستیم:

علی، کمالی، عباس، علی ، ملاحسینی، حسین، شاکر ، اردکانی

اگر از map استفاده کنیم این شکلی :

val names = getContacts().map { it.name.split(&quot &quot) }

نتیجه می شه List<List<String>

ولی اگه از flatMap استفاده کنیم، همونطور که از اسمش مشخص هست، مسطح سازی می کنه به اصلاح

val names = getContacts().flatMap { it.name.split(&quot &quot) }

خروجیش میشه

List<String>

اون چیزی که ما لازم داریم

برنامه نویس موبایل اندروید و iOS
شاید از این پست‌ها خوشتان بیاید