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

من موسوعة حسوب

ترتِّب الدالة sortWith()‎ جميع عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها أو جزءًا محدَّدًا منها تنازليًا وفقًا للمُقارن المُمرّر إليها.

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

إن استدعيت الدالة sortWith()‎ مع تمرير مقارِن comparator، فسترتِّب جميع عناصر المصفوفة أو القائمة المتغيرة التي استُدعيت معها وفقًا للترتيب الذي يحدده هذا المقارن المعطى:

fun <T> Array<out T>.sortWith(comparator: Comparator<in T>) 

fun <T> MutableList<T>.sortWith(comparator: Comparator<in T>)

أمَّا إن استدعيت الدالة مع تمرير مقارِن comparator والعددين fromIndex و toIndex، فسترتب المجال الذي يحدده هذين العددين من المصفوفة التي استُدعيت معها وفقًا للترتيب الذي يحدده هذا المقارن المعطى.

fun <T> Array<out T>.sortWith(
    comparator: Comparator<in T>, 
    fromIndex: Int = 0, 
    toIndex: Int = size)

المعاملات

comparator

المقارن الذي سترتَّب العناصر وفقًا له.

fromIndex

عدد صحيح يشير إلى فهرس العنصر الذي يمثل بداية المجال المراد ترتيبه.

toIndex

عدد صحيح يشير إلى فهرس العنصر الذي يمثل نهاية المجال المراد ترتيبه (لا يدخل هذا العنصر ضمن المجال).

أمثلة

استعمال الدالة ()sortWith لترتيب عناصر مصفوفة وفقًا لناتج طرح قيمة العنصر اللاحق من قيمة العنصر السابق:

import java.util.Arrays

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

    array.sortWith(Comparator { a, b -> b - a })

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

انظر أيضًا

مصادر