الفرق بين المراجعتين لصفحة: «Kotlin/collections/sumByDouble»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق. |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code>sumByDouble()</code> في | <noinclude>{{DISPLAYTITLE: الدالة <code>sumByDouble()</code> في Kotlin}}</noinclude> | ||
تجمع الدالة <code>sumByDouble()</code> جميع نواتج تطبيق دالة معيَّنة على كل عنصر من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها. | |||
الفرق بين الدالة <code>sumByDouble()</code> والدالة <code>[[Kotlin/collections/sumBy|sumBy()]]</code> هو في نوع القيمة التي تستطيع الدالة الممرَّر إلى كلٍّ منهما إعادتها، إذ تعيد الدالة المُمرَّرة إلى [[Kotlin/collections/sumBy|<code>sumBy()</code>]] عددًّا صحيحًا (integer) بينما يمكن أن تعيد الدالة الممررة إلى <code>sumByDouble()</code> عددًا عشريًّا مضاعفًا (double). | |||
==البنية العامة== | ==البنية العامة== | ||
يمكن استدعاء الدالة<code>sumByDouble()</code> | يمكن استدعاء الدالة <code>sumByDouble()</code> مع [[Kotlin/Array|المصفوفات]] و<nowiki/>[[Kotlin/collections|المجموعات]]:<nowiki/><nowiki/><syntaxhighlight lang="kotlin"> | ||
inline fun <T> Array<out T>.sumByDouble( | inline fun <T> Array<out T>.sumByDouble( | ||
selector: (T) -> Double | selector: (T) -> Double | ||
سطر 32: | سطر 34: | ||
): Double | ): Double | ||
inline fun <T> Iterable<T>.sumByDouble( | inline fun <T> Iterable<T>.sumByDouble( | ||
selector: (T) -> Double | selector: (T) -> Double | ||
): Double | ): Double | ||
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> | </syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> التي تدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، ارجع إلى صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]). | ||
== القيمة المعادة == | |||
== القيمة | تعاد القيمة الناتجة عن جمع نواتج تطبيق الدالة <code>selector</code> على كل عنصر من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] المعطاة. | ||
==أمثلة== | ==أمثلة== | ||
<nowiki/><nowiki/><nowiki/>استعمال الدالة <code>()sumByDouble</code> لجمع قيم عناصر مصفوفة مضافًا إلى كلِّ عنصر منها القيمة 0.9:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val array = arrayOf(3, 5, 7, 2 , 6, 9) | val array = arrayOf(3, 5, 7, 2, 6, 9) | ||
println(array.sumByDouble {it + 0.9} )// 37.4 | println(array.sumByDouble { it + 0.9 }) // 37.4 | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | ==انظر أيضًا== | ||
* <code>[[Kotlin/collections/sum|sum()]]</code> | * الدالة <code>[[Kotlin/collections/sum|sum()]]</code>: تجمع جميع قيم عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها ثمَّ تعيد الناتج. | ||
* <code>[[Kotlin/collections/sumBy|sumBy()]]</code> | * الدالة <code>[[Kotlin/collections/sumBy|sumBy()]]</code>: تجمع جميع نواتج تطبيق دالة معيَّنة على كل عنصر من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها. | ||
* <code>[[Kotlin/collections/ | * الدالة <code>[[Kotlin/collections/average|average()]]</code>: تحسب متوسط (average) عناصر المصفوفة أو المجموعة ([[Kotlin/collections|Collection]]) المعطاة لها. | ||
==مصادر== | ==مصادر== | ||
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sum-by-double.html الدالة | *[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sum-by-double.html صفحة الدالة sumByDouble() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Functions]] | [[تصنيف:Kotlin Functions]] |
مراجعة 14:39، 8 أغسطس 2018
تجمع الدالة sumByDouble()
جميع نواتج تطبيق دالة معيَّنة على كل عنصر من عناصر المصفوفة أو المجموعة التي استُدعيت معها.
الفرق بين الدالة sumByDouble()
والدالة sumBy()
هو في نوع القيمة التي تستطيع الدالة الممرَّر إلى كلٍّ منهما إعادتها، إذ تعيد الدالة المُمرَّرة إلى sumBy()
عددًّا صحيحًا (integer) بينما يمكن أن تعيد الدالة الممررة إلى sumByDouble()
عددًا عشريًّا مضاعفًا (double).
البنية العامة
يمكن استدعاء الدالة sumByDouble()
مع المصفوفات والمجموعات:
inline fun <T> Array<out T>.sumByDouble(
selector: (T) -> Double
): Double
inline fun ByteArray.sumByDouble(
selector: (Byte) -> Double
): Double
inline fun ShortArray.sumByDouble(
selector: (Short) -> Double
): Double
inline fun IntArray.sumByDouble(
selector: (Int) -> Double
): Double
inline fun LongArray.sumByDouble(
selector: (Long) -> Double
): Double
inline fun FloatArray.sumByDouble(
selector: (Float) -> Double
): Double
inline fun DoubleArray.sumByDouble(
selector: (Double) -> Double
): Double
inline fun BooleanArray.sumByDouble(
selector: (Boolean) -> Double
): Double
inline fun CharArray.sumByDouble(
selector: (Char) -> Double
): Double
inline fun <T> Iterable<T>.sumByDouble(
selector: (T) -> Double
): Double
يُلاحَظ وجود الكلمة المفتاحية inline
التي تدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، ارجع إلى صفحة الدوال المباشرة (inline functions)).
القيمة المعادة
تعاد القيمة الناتجة عن جمع نواتج تطبيق الدالة selector
على كل عنصر من عناصر المصفوفة أو المجموعة المعطاة.
أمثلة
استعمال الدالة ()sumByDouble
لجمع قيم عناصر مصفوفة مضافًا إلى كلِّ عنصر منها القيمة 0.9:
fun main(args: Array<String>) {
val array = arrayOf(3, 5, 7, 2, 6, 9)
println(array.sumByDouble { it + 0.9 }) // 37.4
}
انظر أيضًا
- الدالة
sum()
: تجمع جميع قيم عناصر المصفوفة أو المجموعة التي استُدعيت معها ثمَّ تعيد الناتج. - الدالة
sumBy()
: تجمع جميع نواتج تطبيق دالة معيَّنة على كل عنصر من عناصر المصفوفة أو المجموعة التي استُدعيت معها. - الدالة
average()
: تحسب متوسط (average) عناصر المصفوفة أو المجموعة (Collection) المعطاة لها.