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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(مراجعة وتدقيق.)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع text.onEach()‎ في لغة Kotlin}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: الدالة <code>onEach()‎</code> في Kotlin}}</noinclude>
تطبّق الدالة <code>onEach()</code>‎ الدالةَ <code>action</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها، ثم تعيد تلك [[Kotlin/CharSequence/index|السلسلة]].
+
تطبّق الدالة <code>onEach()</code>‎ دالةً محددةً على كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] التي استٌدعيت معها، ثم تعيد تلك [[Kotlin/CharSequence/index|السلسلة]].
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="kotlin">
 
<syntaxhighlight lang="kotlin">
سطر 6: سطر 6:
 
     action: (Char) -> Unit
 
     action: (Char) -> Unit
 
): S
 
): S
</syntaxhighlight>'''بيئة التشغيل المطلوبة: Kotlin 1.1'''
+
</syntaxhighlight>'''بيئة التشغيل المطلوبة:''' Kotlin 1.1'''.'''
  
يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
+
وجود الكلمة المفتاحية <code>inline</code> يدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
 +
 
 +
== المعاملات ==
 +
 
 +
=== <code>action</code> ===
 +
الدالة المراد تطبيقها على كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] المعطاة. يمرر إلى الدالة كل محرف على حدة ثم تعيد قيمة مقابلة له.
  
 
==القيم المعادة==
 
==القيم المعادة==
[[Kotlin/CharSequence/index|سلسلة حروف]].
+
تعاد [[Kotlin/CharSequence|سلسلة من المحارف]] نفسها المعطاة تحوي القيمة المقابلة لكل محرف من محارفها والناتجة عن تطبيق الدالة <code>action</code>.
 
==أمثلة==
 
==أمثلة==
===استخدام الدالة <code>onEach()‎</code> مع السلاسل النصية===
+
مثالٌ على استعمال الدالة <code>onEach()‎</code>:<syntaxhighlight lang="kotlin">
تُعرّف الشيفرة الآتية [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، ثم تستدعي الدالة <code>onEach()‎</code> عبرها وتمرر دالة كوسيط:<syntaxhighlight lang="kotlin">
 
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
val str = "Hsoub"  
+
    val str = "Hsoub"
  
str.onEach {print("$it ")}  // H s o u b  
+
    str.onEach { print("$it|") }  // H|s|o|u|b|
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
سطر 25: سطر 29:
 
*<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|سلسلة الحروف]] التي استٌدعيت عبرها وعلى فهارسها.
 
==مصادر==
 
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/on-each.html صفحة الدالة text.onEach()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/on-each.html صفحة الدالة CharSequence.onEach()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Method]]
+
[[تصنيف:Kotlin Function]]
 +
[[تصنيف:Kotlin Text]]
 +
[[تصنيف:Kotlin CharSequence]]

مراجعة 15:47، 4 سبتمبر 2018

تطبّق الدالة onEach()‎ دالةً محددةً على كل محرف من محارف السلسلة التي استٌدعيت معها، ثم تعيد تلك السلسلة.

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

inline fun <S : CharSequence> S.onEach(
    action: (Char) -> Unit
): S

بيئة التشغيل المطلوبة: Kotlin 1.1.

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

المعاملات

action

الدالة المراد تطبيقها على كل محرف من محارف السلسلة المعطاة. يمرر إلى الدالة كل محرف على حدة ثم تعيد قيمة مقابلة له.

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

تعاد سلسلة من المحارف نفسها المعطاة تحوي القيمة المقابلة لكل محرف من محارفها والناتجة عن تطبيق الدالة action.

أمثلة

مثالٌ على استعمال الدالة onEach()‎:

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

    str.onEach { print("$it|") }  // H|s|o|u|b|
}

انظر أيضًا

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

مصادر