الفرق بين المراجعتين ل"Kotlin/kotlin.text/mapNotNull"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع text.mapNotNull()‎ في لغة Kotlin}}</noinclude> تعيد الدالة <code>mapNotNull()</code>‎ Kotlin/String|لائح...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: التابع text.mapNotNull()‎ في لغة Kotlin}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: التابع text.mapNotNull()‎ في لغة Kotlin}}</noinclude>
تعيد الدالة <code>mapNotNull()</code>‎ [[Kotlin/String|لائحة]] مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها.
+
تعيد الدالة <code>mapNotNull()</code>‎ [[Kotlin/String|لائحة]] مكونة من النتائج غير المعدومة (non-null) لتطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها.
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="kotlin">
 
<syntaxhighlight lang="kotlin">
inline fun <R> CharSequence.map(
+
inline fun <R : Any> CharSequence.mapNotNull(
     transform: (Char) -> R
+
     transform: (Char) -> R?
 
): List<R>
 
): List<R>
 
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
 
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
سطر 16: سطر 16:
 
val str = "Hsoub Wiki"  
 
val str = "Hsoub Wiki"  
 
      
 
      
print( str.map {it.toUpperCase()} ) // [H, S, O, U, B,  , W, I, K, I]
+
print( str.mapNotNull { if (it.isUpperCase() ) it else null} ) // [H, W]
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
سطر 22: سطر 22:
 
*<code>[[Kotlin/kotlin.text/mapTo|mapTo()]]‎</code>: تضيف  إلى المجموعة المتغيرة المُمرّرة <code>destination</code> نتائج تطبيق الدالة <code>transform</code> على عناصر سلسلة الحروف التي استٌدعيت عبرها.
 
*<code>[[Kotlin/kotlin.text/mapTo|mapTo()]]‎</code>: تضيف  إلى المجموعة المتغيرة المُمرّرة <code>destination</code> نتائج تطبيق الدالة <code>transform</code> على عناصر سلسلة الحروف التي استٌدعيت عبرها.
 
*<code>[[Kotlin/kotlin.text/mapIndexed|mapIndexed()]]‎</code>: تعيد  [[Kotlin/String|لائحة]] مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها وعلى فهارسها.
 
*<code>[[Kotlin/kotlin.text/mapIndexed|mapIndexed()]]‎</code>: تعيد  [[Kotlin/String|لائحة]] مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها وعلى فهارسها.
 +
 +
* <code>[[Kotlin/kotlin.text/mapTo|mapTo()]]‎</code>: تضيف إلى المجموعة المتغيرة المُمرّرة <code>destination</code> نتائج تطبيق الدالة <code>transform</code> على عناصر سلسلة الحروف التي استٌدعيت عبرها.
 +
 
==مصادر==
 
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map.html صفحة الدالة text.mapNotNull()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map-not-null.html صفحة الدالة text.mapNotNull()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin Method]]
 
[[تصنيف:Kotlin Method]]

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

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

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

inline fun <R : Any> CharSequence.mapNotNull(
    transform: (Char) -> R?
): List<R>

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

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

لائحة.

أمثلة

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

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

fun main(args: Array<String>) {
val str = "Hsoub Wiki" 
    
print( str.mapNotNull { if (it.isUpperCase() ) it else null} ) // [H, W]
}

انظر أيضًا

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

مصادر