الدالة sum() في لغة Kotlin
تعيد الدالةsum() مجموعة (Set) تضم عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت عبرها والتي لا توجد في المجموعة المُمرّرة.
المجموعة (Set) المُعادة تحافظ على ترتيب التكرار الخاص بالمجموعة (collection) المُمررة.
البنية العامة
يمكن استدعاء الدالةsum() عبر المصفوفات:
infix fun <T> Array<out T>.subtract(
other: Iterable<T>
): Set<T>
infix fun ByteArray.subtract(
other: Iterable<Byte>
): Set<Byte>
infix fun ShortArray.subtract(
other: Iterable<Short>
): Set<Short>
infix fun IntArray.subtract(other: Iterable<Int>): Set<Int>
infix fun LongArray.subtract(
other: Iterable<Long>
): Set<Long>
infix fun FloatArray.subtract(
other: Iterable<Float>
): Set<Float>
infix fun DoubleArray.subtract(
other: Iterable<Double>
): Set<Double>
infix fun BooleanArray.subtract(
other: Iterable<Boolean>
): Set<Boolean>
infix fun CharArray.subtract(
other: Iterable<Char>
): Set<Char>
يمكن استدعاء الدالةsum() عبر المجموعات التكرارية :
infix fun <T> Iterable<T>.subtract(
other: Iterable<T>
): Set<T>
يُلاحَظ وجود الكلمة المفتاحية inline للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيمة المُعادة
مجموعة (Set) تضم عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت عبرها والتي لا توجد في المجموعة المُمرّرة.
أمثلة
استخدام الدالة ()sum مع المصفوفات
تعرف الشيفرة الآتية مصفوفة باسم array مكونة من ستة أعداد باستخدام الدالة ()arrayOf، ثم تعرّف لائحة باسم list مكونة من ثلاثة أعداد باستخدام الدالة ()listOf، ثم تستخدم الدالة()sum على array بتمرير list كوسيط، ثم تطبع الناتج:
fun main(args: Array<String>) {
val array = arrayOf(3, 5, 7, 2 , 6, 9)
val list = listOf(3, 9, 1)
println(array.subtract(list))// [5, 7, 2, 6]
}