الدالة sortByDescending()‎ في Kotlin

من موسوعة حسوب
مراجعة 11:37، 30 أغسطس 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (استبدال النص - 'Kotlin Functions' ب'Kotlin Function')

ترتِّب الدالة sortByDescending()‎ عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر. 

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

يمكن استدعاء الدالة sortByDescending()‎ مع المصفوفات والقوائم المتغيرة:

inline fun <T, R : Comparable<R>> Array<out T>.sortBy(
    crossinline selector: (T) -> R?

inline fun <T, R : Comparable<R>> MutableList<T>.sortBy(
    crossinline selector: (T) -> R?)

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

أمثلة

استعمال الدالة ()sortByDescending لترتيب عناصر مصفوفة تنازليًّا بحسب مربَّع كل عنصر:

import java.util.Arrays

fun main(args: Array<String>) {
    val array = arrayOf(1, -9, -3, 7, 5, 6)

    array.sortByDescending { it * it }

    print(Arrays.toString(array)) // [-9, 7, 6, 5, -3, 1]
}

انظر أيضًا

  • الدالة sortBy()‎ : ترتب عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر. 
  • الدالة sortWith()‎: ترتِّب جميع عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها أو جزءًا محدَّدًا منها تنازليًا وفقًا للمُقارن المُمرّر إليها.
  • الدالة sortedByDescending()‎: ترتِّب جميع عناصر المصفوفة أو المجموعة التكرارية (Iterable) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر ثمَّ تضع الناتج في قائمة.

مصادر