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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>text.sumBy()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة <code>sumBy()‎</code> جزءًا من Ko...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: الدالة <code>text.sumBy()‎</code> في لغة Kotlin}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: الدالة <code>text.sumBy()‎</code> في لغة Kotlin}}</noinclude>
تعيد  الدالة <code>sumBy()‎</code> جزءًا من [[Kotlin/CharSequence/index|سلسلة الحروف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها والمُحدد بالوسائط المُمررة (انظر فقرة [[Kotlin/kotlin.text/substring#.D8.A7.D9.84.D8.A8.D9.86.D9.8A.D8.A9 .D8.A7.D9.84.D8.B9.D8.A7.D9.85.D8.A9|البنية العامة]]).   
+
تعيد  الدالة <code>sumBy()‎</code> مجموع القيم التي تُعيدها الدالة المُمرّرة <code>selector</code> مُطبّقة على عناصر [[Kotlin/CharSequence/index|سلسلة الحروف]].   
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="kotlin">
 
<syntaxhighlight lang="kotlin">
inline actual fun String.substring(startIndex: Int): String
+
inline fun CharSequence.sumBy(selector: (Char) -> Int): Int  
 
 
</syntaxhighlight>تعيد  الدالة <code>substring()‎</code> جزءًا من [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها والذي يبدأ عند الفهرس المُحدّد <code>startIndex</code> و يستمر إلى نهاية  [[Kotlin/String|السلسلة النصية]] الأصلية. <syntaxhighlight lang="kotlin">
 
inline actual fun String.substring(
 
    startIndex: Int,
 
    endIndex: Int
 
): String
 
</syntaxhighlight>تعيد  الدالة <code>substring()‎</code> جزءًا من [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها والذي يبدأ عند الفهرس المُحدّد <code>startIndex</code> و ينتهي عند الفهرس المُحدّد <code>endIndex</code>(غير مُتضمّن).<syntaxhighlight lang="kotlin">
 
fun String.substring(range: IntRange): String
 
fun CharSequence.substring(range: IntRange): String
 
 
 
</syntaxhighlight>تعيد  الدالة <code>substring()‎</code> جزءًا من [[Kotlin/CharSequence/index|سلسلة الحروف]] أو [[Kotlin/String|السلسلة النصية]] التي استُدعيت عبرها والمُحدد بمجال الفهارس  المُمرّر <code>range.</code><syntaxhighlight lang="kotlin">
 
inline fun CharSequence.substring(
 
    startIndex: Int,
 
    endIndex: Int = length
 
): String
 
</syntaxhighlight>تعيد  الدالة <code>substring()‎</code> جزءًا من [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استُدعيت عبرها والذي يبدأ عند الفهرس المُحدّد <code>startIndex</code> و ينتهي عند الفهرس المُحدّد <code>endIndex</code>(غير مُتضمّن). القيمة الافتراضية للوسيط <code>endIndex</code> هي طول [[Kotlin/CharSequence/index|سلسلة الحروف]] الأصلية.
 
 
 
يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
 
  
 +
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
 
==القيم المعادة==
 
==القيم المعادة==
[[Kotlin/String|سلسلة نصية]].  
+
عدد من النوع <code>Int</code>.  
 
==أمثلة==
 
==أمثلة==
 
===استخدام الدالة <code>()sumBy</code> مع سلسلة نصية===
 
===استخدام الدالة <code>()sumBy</code> مع سلسلة نصية===
تعرِّف الشيفرة الآتية  [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، ثمَّ تستدعي الدالة  <code>()sumBy</code> عبرها، <nowiki/>ثمَّ تطبع الناتج:<syntaxhighlight lang="kotlin">
+
تعرِّف الشيفرة الآتية  [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، ثمَّ تستدعي الدالة  <code>()sumBy</code> عبرها مع تمرير دالة تُحوّل الحروف إلى قيم عددية، <nowiki/>ثمَّ تطبع الناتج:<syntaxhighlight lang="kotlin">
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
 
val str = "wiki.hsoub.com"
 
val str = "wiki.hsoub.com"
 
      
 
      
println(str.substring(5..9)) // hsoub
+
println(str.sumBy {it.toInt()}) // 1392
println(str.substring(5,10)) // hsoub
 
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
سطر 43: سطر 25:
  
 
==مصادر==
 
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/substring.html الدالة text.sumBy()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/sum-by.html الدالة text.sumBy()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin Functions]]
 
[[تصنيف:Kotlin Functions]]

مراجعة 18:15، 12 يوليو 2018

تعيد الدالة sumBy()‎ مجموع القيم التي تُعيدها الدالة المُمرّرة selector مُطبّقة على عناصر سلسلة الحروف.

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

inline fun CharSequence.sumBy(selector: (Char) -> Int): Int

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

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

عدد من النوع Int.

أمثلة

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

تعرِّف الشيفرة الآتية سلسلة نصية باسم str، ثمَّ تستدعي الدالة ()sumBy عبرها مع تمرير دالة تُحوّل الحروف إلى قيم عددية، ثمَّ تطبع الناتج:

fun main(args: Array<String>) {
val str = "wiki.hsoub.com"
    
println(str.sumBy {it.toInt()}) // 1392
}

انظر أيضًا

مصادر