الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/forEachIndexed»
< Kotlin | kotlin.text
ط استبدال النص - 'Kotlin Functions' ب'Kotlin Function' |
جميل-بيلوني (نقاش | مساهمات) مراجعة وتدقيق. |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code> | <noinclude>{{DISPLAYTITLE: الدالة <code>CharSequence.forEachIndexed()</code> في Kotlin}}</noinclude> | ||
تُنفّد الدالةُ <code>forEachIndexed()</code> الدالةَ المُمرّرةَ إليها على كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها وعلى فهرس ذلك المحرف. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
inline fun CharSequence.forEachIndexed( | inline fun CharSequence.forEachIndexed( | ||
action: (index: Int, Char) -> Unit) | action: (index: Int, Char) -> Unit) | ||
</syntaxhighlight> | </syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة <nowiki/>[[Kotlin/inline functions|الدوال المباشرة (inline functions)]]). | ||
== المعاملات == | |||
=== <code>action</code> === | |||
الدالة المراد تنفيذها مع كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] المعطاة. يمرر إليها فهرس المحرف <code>index</code> وقيمته <code>Char</code>. | |||
==أمثلة== | ==أمثلة== | ||
مثالٌ على استعمال الدالة <code>()forEachIndexed</code><nowiki/>:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val str = "Hsoubwiki" | |||
str.forEachIndexed { index, char -> print("$index => $char | ") } | |||
// 0 => H | 1 => s | 2 => o | 3 => u | 4 => b | 5 => w | 6 => i | 7 => k | 8 => i | | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* <code>[[Kotlin/kotlin.text/forEach|forEach()]]</code>: | * الدالة <code>[[Kotlin/kotlin.text/forEach|forEach()]]</code>: تُنفّد الدالةَ المُمرّرةَ إليها على كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها. | ||
* الدالة <code>[[Kotlin/kotlin.text/foldIndexed|foldIndexed()]]</code>: تجمِّع تراكميًّا ناتج تطبيق عملية معينة على فهرس كل محرف من محارف السلسلة المستدعاة معها (من اليسار إلى اليمين) وقيمته والقيمة التراكمية الحالية مع قيمة أولية إن أعطيت. | |||
* <code>[[Kotlin/kotlin.text/ | |||
==مصادر== | ==مصادر== | ||
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/for-each-indexed.html الدالة | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/for-each-indexed.html صفحة الدالة CharSequence.forEachIndexed() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Function]] | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Text]] | |||
[[تصنيف:Kotlin CharSequence]] |
المراجعة الحالية بتاريخ 11:53، 3 سبتمبر 2018
تُنفّد الدالةُ forEachIndexed()
الدالةَ المُمرّرةَ إليها على كل محرف من محارف السلسلة التي استُدعيت معها وعلى فهرس ذلك المحرف.
البنية العامة
inline fun CharSequence.forEachIndexed(
action: (index: Int, Char) -> Unit)
وجود الكلمة المفتاحية inline
يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).
المعاملات
action
الدالة المراد تنفيذها مع كل محرف من محارف السلسلة المعطاة. يمرر إليها فهرس المحرف index
وقيمته Char
.
أمثلة
مثالٌ على استعمال الدالة ()forEachIndexed
:
fun main(args: Array<String>) {
val str = "Hsoubwiki"
str.forEachIndexed { index, char -> print("$index => $char | ") }
// 0 => H | 1 => s | 2 => o | 3 => u | 4 => b | 5 => w | 6 => i | 7 => k | 8 => i |
}
انظر أيضًا
- الدالة
forEach()
: تُنفّد الدالةَ المُمرّرةَ إليها على كل محرف من محارف السلسلة التي استُدعيت معها. - الدالة
foldIndexed()
: تجمِّع تراكميًّا ناتج تطبيق عملية معينة على فهرس كل محرف من محارف السلسلة المستدعاة معها (من اليسار إلى اليمين) وقيمته والقيمة التراكمية الحالية مع قيمة أولية إن أعطيت.