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

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


==البنية العامة==
==البنية العامة==
سطر 35: سطر 35:
): List<T>  
): List<T>  


</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة <nowiki/>[[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).


== القيمة المُعادة ==
== المعاملات ==
[[Kotlin/List|لائحة]] تضم عناصر [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[kotlin/MutableList|اللائحة المتغيرة]] (<code>MutableList</code>) التي استُدعيت عبرها مرتبة ترتيبًا تنازليًا وفقًا للقيم التي تعيدها الدالة المُمرّرة <code>selector</code>.
 
=== <code>selector</code> ===
دالة تطبق على كل قيمة من قيم [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/Iterable|المجموعة التكرارية]] المعطاة ثم تعيد قيمة مقابلة لكل عنصر من أجل ترتيب العناصر وفقًا لهذه القيم المعادة.
 
== القيمة المعادة ==
تعاد [[Kotlin/List|قائمة]] تضم عناصر [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/Iterable|المجموعة التكرارية]] (Iterable) المعطاة بعد ترتيبها تنازليًّا وفقًا للقيم التي تعيدها الدالة <code>selector</code> التي تطبَّق على كل عنصر على حدة.


==أمثلة==
==أمثلة==
===استخدام الدالة <code>()sortedByDescending</code> مع المصفوفات===
استعمال<nowiki/><nowiki/> الدالة <code>()sortedByDescending</code> لترتيب عناصر مصفوفة تنازليًّا بحسب مربَّع كل عنصر:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية  <nowiki/>[[Kotlin/Array|مصفوفة]] <nowiki/>باسم <code>array</code> مكونة من ستة عناصر باستخدام الدالة <code>()arrayOf‎</code>، ثم تستخدم الدالة<code>()sortedByDescending</code>  على <code>array</code> لترتيبه تنازليًا وفق القيم التي تعيدها الدالة المٌمرّرة، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
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)
      
 
print (array.sortedByDescending {it*it}) // [9, 7, 6, 5, -3, 1]
     print(array.sortedByDescending { it * it }) // [9, 7, 6, 5, -3, 1]
}
}
</syntaxhighlight>
</syntaxhighlight>
==أنظر أيضًا==
==انظر أيضًا==
*<code>[[Kotlin/collections/sortBy|sortBy()]]</code>‎ : تقوم بترتيب  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/MutableList|اللائحة المتغيرة]] (<code>MutableList</code>) التي استُدعيت عبرها وفقًا للقيم التي تعيدها الدالة المُمرّرة . 
*الدالة <code>[[Kotlin/collections/sorted|sorted()]]</code>‎: جميع عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو المجموعة التكرارية التي استُدعيت معها تصاعديًّا ثمَّ تضع الناتج في قائمة.
 
*الدالة <code>[[Kotlin/collections/sortedArray|sortedArray()‎]]</code>: ترتِّب جميع عناصر [[Kotlin/Array|المصفوفة]] التي استُدعيت معها تصاعديًّا ثمَّ تضع الناتج في [[Kotlin/List|مصفوفة]] جديدة.
* <code>[[Kotlin/collections/sort|sort()]]</code>‎ : تقوم بترتيب <nowiki/>[[Kotlin/Array|المصفوفة]] أو اللائحة المتغيرة (<code>MutableList</code>) التي استُدعيت عبرها.
*الدالة <code>[[Kotlin/collections/sortedArrayDescending|sortedArrayDescending()‎]]</code>: ترتِّب جميع عناصر [[Kotlin/Array|المصفوفة]] التي استُدعيت معها تنازليًّا ثمَّ تضع الناتج في [[Kotlin/List|مصفوفة]] جديدة.
* <code>[[Kotlin/collections/sorted|sorted()]]</code>‎ : تعيد لائحة تضم عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو المجموعة التكرارية التي استُدعيت عبرها مرتبة وفق الترتيب الطبيعي.
*الدالة <code>[[Kotlin/collections/sortedArrayWith|sortedArrayWith()‎]]</code>: ترتِّب جميع عناصر [[Kotlin/Array|المصفوفة]] التي استُدعيت معها وفقًا للمُقارِن المُمرّر إليها ثمَّ تضع الناتج في مصفوفة جديدة.  
 
*الدالة <code>[[Kotlin/collections/sortedBy|sortedBy()]]</code>: عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو القائمة المتغيرة (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر.
* <code>[[Kotlin/collections/sortedBy|sortedBy()]]</code>‎ : تعيد لائحة تضم عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو المجموعة التكرارية التي استُدعيت عبرها مرتبة ترتيبًا طبيعيًا وفقًا للقيم التي تعيدها الدالة المُمرّرة <code>selector</code>. 
*الدالة <code>[[Kotlin/collections/sortedDescending|sortedDescending()‎]]</code>: ترتِّب جميع عناصر [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت معها تنازليًّا ثمَّ تضع الناتج في [[Kotlin/List|قائمة]].
* الدالة <code>[[Kotlin/collections/sortedWith|sortedWith()]]</code>: ترتِّب جميع عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/Iterable|المجموعة التكرارية]] التي استُدعيت معها وفقًا للمُقارِن المُمرّر إليها ثمَّ تضع الناتج في قائمة.
* الدالة <code>[[Kotlin/collections/sortByDescending|sortByDescending()]]</code>: ترتِّب عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو القائمة المتغيرة (MutableList) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر.


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

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

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

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

inline fun <T, R : Comparable<R>> Array<out T>.sortedByDescending(
    crossinline selector: (T) -> R?
): List<T> 
inline fun <R : Comparable<R>> ByteArray.sortedByDescending(
    crossinline selector: (Byte) -> R?
): List<Byte> 
inline fun <R : Comparable<R>> ShortArray.sortedByDescending(
    crossinline selector: (Short) -> R?
): List<Short> 
inline fun <R : Comparable<R>> IntArray.sortedByDescending(
    crossinline selector: (Int) -> R?
): List<Int> 
inline fun <R : Comparable<R>> LongArray.sortedByDescending(
    crossinline selector: (Long) -> R?
): List<Long> 
inline fun <R : Comparable<R>> FloatArray.sortedByDescending(
    crossinline selector: (Float) -> R?
): List<Float> 
inline fun <R : Comparable<R>> DoubleArray.sortedByDescending(
    crossinline selector: (Double) -> R?
): List<Double> 
inline fun <R : Comparable<R>> BooleanArray.sortedByDescending(
    crossinline selector: (Boolean) -> R?
): List<Boolean>
inline fun <R : Comparable<R>> CharArray.sortedByDescending(
    crossinline selector: (Char) -> R?
): List<Char> 
inline fun <T, R : Comparable<R>> Iterable<T>.sortedByDescending(
    crossinline selector: (T) -> R?
): List<T>

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

المعاملات

selector

دالة تطبق على كل قيمة من قيم المصفوفة أو المجموعة التكرارية المعطاة ثم تعيد قيمة مقابلة لكل عنصر من أجل ترتيب العناصر وفقًا لهذه القيم المعادة.

القيمة المعادة

تعاد قائمة تضم عناصر المصفوفة أو المجموعة التكرارية (Iterable) المعطاة بعد ترتيبها تنازليًّا وفقًا للقيم التي تعيدها الدالة selector التي تطبَّق على كل عنصر على حدة.

أمثلة

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

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

    print(array.sortedByDescending { it * it }) // [9, 7, 6, 5, -3, 1]
}

انظر أيضًا

  • الدالة sorted()‎: جميع عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت معها تصاعديًّا ثمَّ تضع الناتج في قائمة.
  • الدالة sortedArray()‎: ترتِّب جميع عناصر المصفوفة التي استُدعيت معها تصاعديًّا ثمَّ تضع الناتج في مصفوفة جديدة.
  • الدالة sortedArrayDescending()‎: ترتِّب جميع عناصر المصفوفة التي استُدعيت معها تنازليًّا ثمَّ تضع الناتج في مصفوفة جديدة.
  • الدالة sortedArrayWith()‎: ترتِّب جميع عناصر المصفوفة التي استُدعيت معها وفقًا للمُقارِن المُمرّر إليها ثمَّ تضع الناتج في مصفوفة جديدة.  
  • الدالة sortedBy()‎: عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر.
  • الدالة sortedDescending()‎: ترتِّب جميع عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت معها تنازليًّا ثمَّ تضع الناتج في قائمة.
  • الدالة sortedWith()‎: ترتِّب جميع عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت معها وفقًا للمُقارِن المُمرّر إليها ثمَّ تضع الناتج في قائمة.
  •  الدالة sortByDescending()‎: ترتِّب عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر.

مصادر