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

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع text.mapIndexedNotNull()‎ في لغة Kotlin}}</noinclude> تعيد الدالة <code>mapIndexedNotNull()</code>‎ Kotlin/S...'
 
لا ملخص تعديل
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع text.mapIndexedNotNull()‎ في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: التابع text.mapIndexedNotNull()‎ في لغة Kotlin}}</noinclude>
تعيد الدالة <code>mapIndexedNotNull()</code>‎ [[Kotlin/String|لائحة]] مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها وعلى فهارسها.
تعيد الدالة <code>mapIndexedNotNull()</code>‎ [[Kotlin/String|لائحة]] مكونة من النتائج غير المعدومة (non-nul) لتطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها وعلى فهارسها.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
inline fun <R> CharSequence.mapIndexed(
inline fun <R : Any> CharSequence.mapIndexedNotNull(
     transform: (index: Int, Char) -> R
     transform: (index: Int, 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.mapIndexed { index, char -> index + char.toInt()} ) // [72, 116, 113, 120, 102, 37, 93, 112, 115, 114]
print( str.mapIndexedNotNull { index, char -> if (index < 5) index + char.toInt() else null} ) // [72, 116, 113, 120, 102]
 
}
}
</syntaxhighlight>
</syntaxhighlight>
سطر 23: سطر 22:
*<code>[[Kotlin/kotlin.text/lineSequence|lineSequence()]]‎</code>: تقسّم [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها إلى سلسلة مكونة من سطور مفصولة بأيٍّ من [[Kotlin/CharSequence/index|سلاسل الحروف]] التالية <code>CRLF</code> أو  <code>LF</code> أو <code>CR</code>.
*<code>[[Kotlin/kotlin.text/lineSequence|lineSequence()]]‎</code>: تقسّم [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها إلى سلسلة مكونة من سطور مفصولة بأيٍّ من [[Kotlin/CharSequence/index|سلاسل الحروف]] التالية <code>CRLF</code> أو  <code>LF</code> أو <code>CR</code>.
*<code>[[Kotlin/kotlin.text/map|map()]]‎</code>: تعيد‎ لائحة مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها.
*<code>[[Kotlin/kotlin.text/map|map()]]‎</code>: تعيد‎ لائحة مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها.
* <code>[[Kotlin/kotlin.text/mapIndexed|mapIndexed()]]‎</code>: تعيد لائحة مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها وعلى فهارسها.
==مصادر==
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map-indexed.html صفحة الدالة text.mapIndexedNotNull()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map-indexed-not-null.html صفحة الدالة text.mapIndexedNotNull()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Method]]
[[تصنيف:Kotlin Method]]

مراجعة 11:19، 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]
}

انظر أيضًا

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

مصادر