الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/mapIndexedNotNull»
< Kotlin | kotlin.text
لا ملخص تعديل |
لا ملخص تعديل |
||
سطر 20: | سطر 20: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
*<code>[[Kotlin/kotlin.text/ | *<code>[[Kotlin/kotlin.text/mapTo|mapTo()]]</code>: تضيف إلى المجموعة المتغيرة المُمرّرة <code>destination</code> نتائج تطبيق الدالة <code>transform</code> على عناصر سلسلة الحروف التي استٌدعيت عبرها. | ||
*<code>[[Kotlin/kotlin.text/map|map()]]</code>: تعيد لائحة مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها. | *<code>[[Kotlin/kotlin.text/map|map()]]</code>: تعيد لائحة مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها. | ||
مراجعة 11:40، 10 يوليو 2018
تعيد الدالة mapIndexedNotNull()
لائحة مكونة من النتائج غير المعدومة (non-nul) لتطبيق الدالة transform
المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها.
البنية العامة
inline fun <R : Any> CharSequence.mapIndexedNotNull(
transform: (index: Int, Char) -> R?
): List<R>
يُلاحَظ وجود الكلمة المفتاحية inline
للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيم المعادة
أمثلة
استخدام الدالة mapIndexedNotNull()
مع السلاسل النصية
تُعرّف الشيفرة الآتية سلسلة نصية باسم str
، ثم تستدعي الدالة mapIndexedNotNull()
عبرها وتمرر دالة كوسيط، ثم تطبع الناتج:
fun main(args: Array<String>) {
val str = "Hsoub Wiki"
print( str.mapIndexedNotNull { index, char -> if (index < 5) index + char.toInt() else null} ) // [72, 116, 113, 120, 102]
}
انظر أيضًا
mapTo()
: تضيف إلى المجموعة المتغيرة المُمرّرةdestination
نتائج تطبيق الدالةtransform
على عناصر سلسلة الحروف التي استٌدعيت عبرها.map()
: تعيد لائحة مكونة من نتائج تطبيق الدالةtransform
المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها.
mapIndexed()
: تعيد لائحة مكونة من نتائج تطبيق الدالةtransform
المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها.