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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع text.mapIndexed()‎ في لغة Kotlin}}</noinclude> تعيد الدالة <code>mapIndexed()</code>‎ Kotlin/String|لائح...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: التابع text.mapIndexed()‎ في لغة Kotlin}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: التابع text.mapIndexed()‎ في لغة Kotlin}}</noinclude>
تعيد الدالة <code>mapIndexed()</code>‎ [[Kotlin/String|لائحة]] مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها.
+
تعيد الدالة <code>mapIndexed()</code>‎ [[Kotlin/String|لائحة]] مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها وعلى فهارسها.
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="kotlin">
 
<syntaxhighlight lang="kotlin">
inline fun <R> CharSequence.map(
+
inline fun <R> CharSequence.mapIndexed(
     transform: (Char) -> R
+
     transform: (index: Int, Char) -> R
 
): List<R>
 
): List<R>
</syntaxhighlight>
+
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
 +
 
 
==القيم المعادة==
 
==القيم المعادة==
 
[[Kotlin/String|لائحة]].
 
[[Kotlin/String|لائحة]].
سطر 14: سطر 15:
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
 
val str = "Hsoub Wiki"  
 
val str = "Hsoub Wiki"  
   
+
 
print( str.map {it.toUpperCase()} ) // [H, S, O, U, B, , W, I, K, I]
+
print( str.mapIndexed { index, char -> index + char.toInt()} ) // [72, 116, 113, 120, 102, 37, 93, 112, 115, 114]
 +
 
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 
==انظر أيضًا==
 
==انظر أيضًا==
 
*<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/text/isHighSurrogate|isHighSurrogate()]]‎</code>: تعيد القيمة <code>true</code> في حال كان الحرف الذي استٌدعيت عبره بديلًا علويًا لكود اليونيكود (Unicode high-surrogate code unit).
+
*<code>[[Kotlin/kotlin.text/map|map()]]‎</code>: تعيد‎ لائحة مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة على عناصر سلسلة الحروف التي استٌدعيت عبرها.
*<code>[[Kotlin/text/isDefined|isDefined()]]‎</code>: تعيد القيمة <code>true</code> في حال كان الحرف (Unicode code point) الذي استٌدعيت عبره مُعرّفًا في اليونيكود (Unicode).
 
 
==مصادر==
 
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map.html صفحة الدالة text.mapIndexed()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map-indexed.html صفحة الدالة text.mapIndexed()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin Method]]
 
[[تصنيف:Kotlin Method]]

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

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

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

inline fun <R> CharSequence.mapIndexed(
    transform: (index: Int, Char) -> R
): List<R>

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

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

لائحة.

أمثلة

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

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

fun main(args: Array<String>) {
val str = "Hsoub Wiki" 
   
print( str.mapIndexed { index, char -> index + char.toInt()} ) // [72, 116, 113, 120, 102, 37, 93, 112, 115, 114]

}

انظر أيضًا

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

مصادر