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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع text.onEach()‎ في لغة Kotlin}}</noinclude> تعيد الدالة <code>onEach()</code>‎ لائحة م...')
 
ط
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع text.onEach()‎ في لغة Kotlin}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: الدالة <code>onEach()‎</code> في Kotlin}}</noinclude>
تعيد الدالة <code>onEach()</code>‎ [[Kotlin/String|لائحة]] مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها.
+
تطبّق الدالة <code>onEach()</code>‎ دالةً محددةً على كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] التي استٌدعيت معها، ثم تعيد تلك [[Kotlin/CharSequence/index|السلسلة]].
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="kotlin">
 
<syntaxhighlight lang="kotlin">
inline fun <R> CharSequence.map(
+
inline fun <S : CharSequence> S.onEach(
     transform: (Char) -> R
+
     action: (Char) -> Unit
): List<R>
+
): S
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
+
</syntaxhighlight>'''بيئة التشغيل المطلوبة:''' Kotlin 1.1'''.'''
 +
 
 +
وجود الكلمة المفتاحية <code>inline</code> يدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
 +
 
 +
== المعاملات ==
 +
 
 +
=== <code>action</code> ===
 +
الدالة المراد تطبيقها على كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] المعطاة. يمرر إلى الدالة كل محرف على حدة ثم تعيد قيمة مقابلة له.
  
 
==القيم المعادة==
 
==القيم المعادة==
[[Kotlin/String|لائحة]].
+
تعاد [[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 Wiki"  
+
    val str = "Hsoub"
      
+
 
print( str.map {it.toUpperCase()} ) // [H, S, O, U, B,  , W, I, K, I]
+
     str.onEach { print("$it|") } // H|s|o|u|b|
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 
==انظر أيضًا==
 
==انظر أيضًا==
*<code>[[Kotlin/kotlin.text/mapTo|mapTo()]]</code>: تضيف  إلى المجموعة المتغيرة المُمرّرة <code>destination</code> نتائج تطبيق الدالة <code>transform</code> على عناصر سلسلة الحروف التي استٌدعيت عبرها.
+
* الدالة <code>[[Kotlin/kotlin.text/map|map()‎]]</code>: تعيد قائمةً تحوي ناتج تطبيق الدالة المُمرّرة إليها على كل محرف من محارف <nowiki/>[[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها.
*<code>[[Kotlin/kotlin.text/mapIndexed|mapIndexed()]]</code>: تعيد  [[Kotlin/String|لائحة]] مكونة من نتائج تطبيق الدالة <code>transform</code> المُمرّرة  على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها وعلى فهارسها.
 
 
==مصادر==
 
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/map.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:57، 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|
}

انظر أيضًا

  • الدالة map()‎: تعيد قائمةً تحوي ناتج تطبيق الدالة المُمرّرة إليها على كل محرف من محارف السلسلة التي استُدعيت معها.

مصادر