الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/mapNotNullTo»

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع text.mapNotNullTo()‎ في لغة Kotlin}}</noinclude> تعيد الدالة <code>mapNotNullTo()</code>‎ Kotlin/String|لا...'
 
لا ملخص تعديل
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع text.mapNotNullTo()‎ في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: التابع text.mapNotNullTo()‎ في لغة Kotlin}}</noinclude>
تعيد الدالة <code>mapNotNullTo()</code>‎ [[Kotlin/String|لائحة]] مكونة من النتائج غير المعدومة (non-null) لتطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها.
تضيف الدالة <code>mapNotNullTo()</code>‎ إلى المجموعة المتغيرة المُمرّرة <code>destination</code> النتائج غير المعدومة (non-null) لتطبيق الدالة <code>transform</code> على عناصر سلسلة الحروف التي استٌدعيت عبرها.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
inline fun <R : Any> CharSequence.mapNotNull(
inline fun <R : Any, C : MutableCollection<in R>> CharSequence.mapNotNullTo(
    destination: C,
     transform: (Char) -> R?
     transform: (Char) -> R?
): List<R>
): C
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].


==القيم المعادة==
==القيم المعادة==
[[Kotlin/String|لائحة]].
المجموعة المتغيرة <code>destination</code>.
==أمثلة==
==أمثلة==
===استخدام الدالة <code>mapNotNullTo()‎</code> مع السلاسل النصية===
===استخدام الدالة <code>mapNotNullTo()‎</code> مع السلاسل النصية===
تُعرّف الشيفرة الآتية [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، ثم تستدعي الدالة <code>mapNotNullTo()‎</code> عبرها وتمرر دالة كوسيط، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
تُعرّف الشيفرة الآتية سلسلة نصية باسم <code>str</code>، وكائنا من النوع <code>mutableList</code> باسم <code>list</code> ثم تستدعي الدالة <code>mapNotNullTo()‎</code> عبرها وتمرر دالة كوسيط، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val str = "Hsoub Wiki"  
val str = "Hsoub Wiki"  
val list = mutableListOf<Char>()
str.mapNotNullTo (list) { if (it.isUpperCase() ) it else null}
      
      
print( str.mapNotNull { if (it.isUpperCase() ) it else null} ) // [H, W]
print( list ) // [H, W]
}
}
</syntaxhighlight>
</syntaxhighlight>
سطر 26: سطر 31:


==مصادر==
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map-not-null.html صفحة الدالة text.mapNotNullTo()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map-not-null-to.html صفحة الدالة text.mapNotNullTo()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Method]]
[[تصنيف:Kotlin Method]]

مراجعة 11:54، 10 يوليو 2018

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

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

inline fun <R : Any, C : MutableCollection<in R>> CharSequence.mapNotNullTo(
    destination: C, 
    transform: (Char) -> R?
): C

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

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

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

أمثلة

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

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

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

val list = mutableListOf<Char>()

str.mapNotNullTo (list) { if (it.isUpperCase() ) it else null} 
    
print( list ) // [H, W]
}

انظر أيضًا

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

مصادر