الفرق بين المراجعتين لصفحة: «Kotlin/collections/sortWith»

من موسوعة حسوب
لا ملخص تعديل
طلا ملخص تعديل
 
(3 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>sortWith()‎</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>sortWith()‎</code> في Kotlin}}</noinclude>
تقوم الدالة<code>sortWith()‎</code> بترتيب  [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|اللائحة المتغيرة]] (<code>MutableList</code>) التي استُدعيت عبرها تنازليًا وفقًا للمُقارن المُمرّر <code>comparator</code>.   
ترتِّب الدالة <code>sortWith()‎</code> جميع عناصر [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|القائمة المتغيرة]] (MutableList) التي استُدعيت معها أو جزءًا محدَّدًا منها تنازليًا وفقًا للمُقارن المُمرّر إليها.   
 
في حال تمرير عددين <code>fromIndex</code> و <code>toIndex</code>  فستقوم بترتيب مجال من  [[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها والمحدد بواسطة الفهرسين <code>fromIndex</code> و <code>toIndex</code> وفقًا للترتيب المحدد من قبل المقارِن المُمرّر <code>comparator</code>.


==البنية العامة==
==البنية العامة==
في حال استدعاء الدالة  <code>sortWith()‎</code> عبر  [[Kotlin/Array|المصفوفات]] مع تمرير مقارِن <code>comparator</code> فستقوم بترتيب  [[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها وفقًا للترتيب المحدد من قبل المقارِن المُمرّر <code>comparator</code>:<nowiki/><nowiki/><syntaxhighlight lang="kotlin">
إن استدعيت الدالة <code>sortWith()‎</code> مع تمرير مقارِن <code>comparator</code>، فسترتِّب جميع عناصر [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|القائمة المتغيرة]] التي استُدعيت معها وفقًا للترتيب الذي يحدده هذا المقارن المعطى:<nowiki/><nowiki/><syntaxhighlight lang="kotlin">
fun <T> Array<out T>.sortWith(comparator: Comparator<in T>)  
fun <T> Array<out T>.sortWith(comparator: Comparator<in T>)  


</syntaxhighlight>في حال استدعاء الدالة  <code>sortWith()</code> عبر  [[Kotlin/Array|المصفوفات]] مع تمرير مقارِن <code>comparator</code> وعددين <code>fromIndex</code> و <code>toIndex</code> فستقوم بترتيب مجال من [[Kotlin/Array|المصفوفة]] التي استُدعيت عبرها والمحدد بواسطة الفهرسين <code>fromIndex</code> و <code>toIndex</code> وفقًا للترتيب المحدد من قبل المقارِن المُمرّر <code>comparator</code>.<syntaxhighlight lang="kotlin">
fun <T> MutableList<T>.sortWith(comparator: Comparator<in T>)  
 
 
</syntaxhighlight>أمَّا إن استدعيت الدالة مع تمرير مقارِن <code>comparator</code> والعددين <code>fromIndex</code> و <code>toIndex</code>، فسترتب المجال الذي يحدده هذين العددين من [[Kotlin/Array|المصفوفة]] التي استُدعيت معها وفقًا للترتيب الذي يحدده هذا المقارن المعطى.<syntaxhighlight lang="kotlin">
fun <T> Array<out T>.sortWith(
fun <T> Array<out T>.sortWith(
     comparator: Comparator<in T>,  
     comparator: Comparator<in T>,  
     fromIndex: Int = 0,  
     fromIndex: Int = 0,  
     toIndex: Int = size)
     toIndex: Int = size)
</syntaxhighlight>في حال استدعاء الدالة  <code>sortWith()‎</code> عبر  كائن من النوع <code>[[kotlin/MutableList|MutableList]]</code> مع تمرير مقارِن <code>comparator</code> فستقوم بترتيب  ذلك الكائن الذي استُدعيت عبره وفقًا للترتيب المحدد من قبل المقارِن المُمرّر <code>comparator</code>.<syntaxhighlight lang="kotlin">
</syntaxhighlight>
fun <T> MutableList<T>.sortWith(comparator: Comparator<in T>)  
 
== المعاملات ==
 
=== <code>comparator</code> ===
[[Kotlin/Comparator|المقارن]] الذي سترتَّب العناصر وفقًا له.
 
=== <code>fromIndex</code> ===
عدد صحيح يشير إلى فهرس العنصر الذي يمثل بداية المجال المراد ترتيبه.
 
=== <code>toIndex</code> ===
عدد صحيح يشير إلى فهرس العنصر الذي يمثل نهاية المجال المراد ترتيبه (لا يدخل هذا العنصر ضمن المجال).


</syntaxhighlight>
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()sortWith</code> مع المصفوفات===
<nowiki/><nowiki/>استعمال الدالة <code>()sortWith</code> لترتيب عناصر مصفوفة وفقًا لناتج طرح قيمة العنصر اللاحق من قيمة العنصر السابق:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية  <nowiki/>[[Kotlin/Array|مصفوفة]] <nowiki/>باسم <code>array</code> مكونة من ستة عناصر باستخدام الدالة <code>()arrayOf‎</code>، ثم تستخدم الدالة<code>()sortWith</code>  على <code>array</code> لترتيبه وفقًا للمقارِن المُمرّر، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
import java.util.Arrays
import java.util.Arrays


fun main(args: Array<String>) {
fun main(args: Array<String>) {
val array = arrayOf(1, -9, -3, 7, 5, 6)
    val array = arrayOf(1, -9, -3, 7, 5, 6)
      
 
array.sortWith (Comparator { a, b -> b - a })
     array.sortWith(Comparator { a, b -> b - a })
      
 
print (Arrays.toString(array)) // [7, 6, 5, 1, -3, -9]
     print(Arrays.toString(array)) // [7, 6, 5, 1, -3, -9]
}
}
</syntaxhighlight>
</syntaxhighlight>
==أنظر أيضًا==
==انظر أيضًا==
*<code>[[Kotlin/collections/sort|sort()]]</code>‎ : تقوم بترتيب  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/MutableList|اللائحة المتغيرة]] (<code>MutableList</code>) التي استُدعيت عبرها. 
*الدالة <code>[[Kotlin/collections/sort|sort()]]</code>‎ : ترتب [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|القائمة المتغيرة]] (MutableList) التي استُدعيت معها تصاعديًّا.
 
*الدالة <code>[[Kotlin/collections/sortDescending|sortDescending()‎]]</code>: ترتِّب [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|القائمة المتغيرة]] (MutableList) التي استُدعيت معها تنازليًّا.  
* <code>[[Kotlin/collections/sortBy|sortBy()]]</code>‎ : تقوم بترتيب <nowiki/>[[Kotlin/Array|المصفوفة]] أو اللائحة المتغيرة (<code>MutableList</code>) التي استُدعيت عبرها وفقًا للقيم التي تعيدها الدالة المُمرّرة . 
*الدالة <code>[[Kotlin/collections/sortBy|sortBy()]]</code>‎ : ترتب عناصر [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|القائمة المتغيرة]] (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر. 
*  الدالة <code>[[Kotlin/collections/sortByDescending|sortByDescending()‎]]</code>: ترتِّب عناصر [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|القائمة المتغيرة]] (MutableList) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر.
* الدالة <code>[[Kotlin/collections/sortedArrayWith|sortedArrayWith()‎]]</code>: ترتِّب جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] التي استُدعيت معها وفقًا للمُقارِن المُمرّر إليها ثمَّ تضع الناتج في مصفوفة جديدة.
* الدالة <code>[[Kotlin/collections/sortedWith|sortedWith()‎]]</code>: ترتِّب جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو المجموعة التكرارية التي استُدعيت معها وفقًا للمُقارِن المُمرّر إليها ثمَّ تضع الناتج في قائمة.


==مصادر==
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sort-with.html الدالة  sortWith()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sort-with.html صفحة الدالة sortWith()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Collection]]

المراجعة الحالية بتاريخ 11:11، 8 سبتمبر 2018

ترتِّب الدالة 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]
}

انظر أيضًا

مصادر