التابع text.mapIndexedNotNullTo()‎ في لغة Kotlin

من موسوعة حسوب
مراجعة 11:36، 10 يوليو 2018 بواسطة محمد-بغات (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع text.mapIndexedNotNullTo()‎ في لغة Kotlin}}</noinclude> تضيف الدالة <code>mapIndexedNotNullTo()</code>‎ إلى...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تضيف الدالة mapIndexedNotNullTo()‎ إلى المجموعة المتغيرة المُمرّرة destination نتائج تطبيق الدالة transform على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها.

البنية العامة

inline fun <R, C : MutableCollection<in R>> CharSequence.mapIndexedTo(
    destination: C, 
    transform: (index: Int, Char) -> R
): C

يُلاحَظ وجود الكلمة المفتاحية inline للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).

القيم المعادة

المجموعة المتغيرة destination.

أمثلة

استخدام الدالة mapIndexedNotNullTo()‎ مع السلاسل النصية

تُعرّف الشيفرة الآتية سلسلة نصية باسم str، وكائنا من النوع mutableList باسم list ثم تستدعي الدالة mapIndexedNotNullTo()‎ عبرها وتمرر دالة كوسيط، ثم تطبع الناتج:

fun main(args: Array<String>) {
val str = "Hsoub Wiki" 
val list = mutableListOf<Int>()

str.mapIndexedTo (list) { index, char -> index + char.toInt()}
    
print( list ) // [72, 116, 113, 120, 102, 37, 93, 112, 115, 114]
}

انظر أيضًا

  • map(): تعيد‎ لائحة مكونة من نتائج تطبيق الدالة transform المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها.
  • mapIndexed(): تعيد لائحة مكونة من نتائج تطبيق الدالة transform المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها.

مصادر