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

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

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

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

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

في حال استدعاء الدالة  sortWith()‎ عبر المصفوفات مع تمرير مقارِن comparator فستقوم بترتيب المصفوفة التي استُدعيت عبرها وفقًا للترتيب المحدد من قبل المقارِن المُمرّر comparator:

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

في حال استدعاء الدالة  sortWith()‎ عبر المصفوفات مع تمرير مقارِن comparator وعددين fromIndex و toIndex فستقوم بترتيب مجال من المصفوفة التي استُدعيت عبرها والمحدد بواسطة الفهرسين fromIndex و toIndex وفقًا للترتيب المحدد من قبل المقارِن المُمرّر comparator.

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

في حال استدعاء الدالة  sortWith()‎ عبر كائن من النوع MutableList مع تمرير مقارِن comparator فستقوم بترتيب ذلك الكائن الذي استُدعيت عبره وفقًا للترتيب المحدد من قبل المقارِن المُمرّر comparator.

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

أمثلة

استخدام الدالة ()sortWith مع المصفوفات

تعرف الشيفرة الآتية  مصفوفة باسم array مكونة من ستة عناصر باستخدام الدالة ()arrayOf‎، ثم تستخدم الدالة()sortWith  على array لترتيبه وفقًا للمقارِن المُمرّر، ثم تطبع الناتج:

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]
}

أنظر أيضًا

  • sortBy()‎ : تقوم بترتيب المصفوفة أو اللائحة المتغيرة (MutableList) التي استُدعيت عبرها وفقًا للقيم التي تعيدها الدالة المُمرّرة . 

مصادر