الفرق بين المراجعتين ل"Kotlin/kotlin.text/mapIndexedNotNullTo"
< Kotlin | kotlin.text
اذهب إلى التنقل
اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع text.mapIndexedNotNullTo() في لغة Kotlin}}</noinclude> تضيف الدالة <code>mapIndexedNotNullTo()</code> إلى...') |
|||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: التابع text.mapIndexedNotNullTo() في لغة Kotlin}}</noinclude> | <noinclude>{{DISPLAYTITLE: التابع text.mapIndexedNotNullTo() في لغة Kotlin}}</noinclude> | ||
− | تضيف الدالة <code>mapIndexedNotNullTo()</code> إلى المجموعة المتغيرة المُمرّرة <code>destination</code> | + | تضيف الدالة <code>mapIndexedNotNullTo()</code> إلى المجموعة المتغيرة المُمرّرة <code>destination</code> النتائج غير المعدومة (non-null) لتطبيق الدالة <code>transform</code> على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها وعلى فهارسها. |
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
− | inline fun <R, C : MutableCollection<in R>> CharSequence. | + | inline fun <R : Any, C : MutableCollection<in R>> CharSequence.mapIndexedNotNullTo( |
destination: C, | destination: C, | ||
− | transform: (index: Int, Char) -> R | + | transform: (index: Int, Char) -> R? |
): C | ): C | ||
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]]. | </syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]]. | ||
سطر 18: | سطر 18: | ||
val list = mutableListOf<Int>() | val list = mutableListOf<Int>() | ||
− | str. | + | str.mapIndexedNotNullTo (list) { index, char -> if (index < 5) index + char.toInt() else null} |
− | print( list ) // [72, 116, 113, 120, 102 | + | print( list ) // [72, 116, 113, 120, 102] |
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
سطر 27: | سطر 27: | ||
* <code>[[Kotlin/kotlin.text/mapIndexed|mapIndexed()]]</code>: تعيد لائحة مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها. | * <code>[[Kotlin/kotlin.text/mapIndexed|mapIndexed()]]</code>: تعيد لائحة مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها. | ||
+ | * <code>[[Kotlin/kotlin.text/mapTo|mapTo()]]</code>: تضيف إلى المجموعة المتغيرة المُمرّرة <code>destination</code> نتائج تطبيق الدالة <code>transform</code> على عناصر سلسلة الحروف التي استٌدعيت عبرها. | ||
==مصادر== | ==مصادر== | ||
− | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map-indexed-to.html صفحة الدالة text.mapIndexedNotNullTo() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | + | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map-indexed-not-null-to.html صفحة الدالة text.mapIndexedNotNullTo() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] |
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Method]] | [[تصنيف:Kotlin Method]] |
مراجعة 11:40، 10 يوليو 2018
تضيف الدالة mapIndexedNotNullTo()
إلى المجموعة المتغيرة المُمرّرة destination
النتائج غير المعدومة (non-null) لتطبيق الدالة transform
على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها.
البنية العامة
inline fun <R : Any, C : MutableCollection<in R>> CharSequence.mapIndexedNotNullTo(
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.mapIndexedNotNullTo (list) { index, char -> if (index < 5) index + char.toInt() else null}
print( list ) // [72, 116, 113, 120, 102]
}
انظر أيضًا
map()
: تعيد لائحة مكونة من نتائج تطبيق الدالةtransform
المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها.
mapIndexed()
: تعيد لائحة مكونة من نتائج تطبيق الدالةtransform
المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها.mapTo()
: تضيف إلى المجموعة المتغيرة المُمرّرةdestination
نتائج تطبيق الدالةtransform
على عناصر سلسلة الحروف التي استٌدعيت عبرها.