الفرق بين المراجعتين لصفحة: «Kotlin/collections/sortedByDescending»
< Kotlin | collections
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>sortedByDescending()</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>sortedByDescending()</code> [...' |
لا ملخص تعديل |
||
سطر 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/List|لائحة]] تضم عناصر [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[kotlin/MutableList|اللائحة المتغيرة]] (<code>MutableList</code>) التي استُدعيت عبرها مرتبة ترتيبًا تنازليًا وفقًا للقيم التي تعيدها الدالة المُمرّرة <code>selector</code>. | ||
==البنية العامة== | ==البنية العامة== | ||
<nowiki/><nowiki/><syntaxhighlight lang="kotlin"> | <nowiki/><nowiki/><syntaxhighlight lang="kotlin"> | ||
inline fun <T, R : Comparable<R>> Array<out T>. | inline fun <T, R : Comparable<R>> Array<out T>.sortedByDescending( | ||
crossinline selector: (T) -> R? | crossinline selector: (T) -> R? | ||
): List<T> | ): List<T> | ||
inline fun <R : Comparable<R>> ByteArray. | inline fun <R : Comparable<R>> ByteArray.sortedByDescending( | ||
crossinline selector: (Byte) -> R? | crossinline selector: (Byte) -> R? | ||
): List<Byte> | ): List<Byte> | ||
inline fun <R : Comparable<R>> ShortArray. | inline fun <R : Comparable<R>> ShortArray.sortedByDescending( | ||
crossinline selector: (Short) -> R? | crossinline selector: (Short) -> R? | ||
): List<Short> | ): List<Short> | ||
inline fun <R : Comparable<R>> IntArray. | inline fun <R : Comparable<R>> IntArray.sortedByDescending( | ||
crossinline selector: (Int) -> R? | crossinline selector: (Int) -> R? | ||
): List<Int> | ): List<Int> | ||
inline fun <R : Comparable<R>> LongArray. | inline fun <R : Comparable<R>> LongArray.sortedByDescending( | ||
crossinline selector: (Long) -> R? | crossinline selector: (Long) -> R? | ||
): List<Long> | ): List<Long> | ||
inline fun <R : Comparable<R>> FloatArray. | inline fun <R : Comparable<R>> FloatArray.sortedByDescending( | ||
crossinline selector: (Float) -> R? | crossinline selector: (Float) -> R? | ||
): List<Float> | ): List<Float> | ||
inline fun <R : Comparable<R>> DoubleArray. | inline fun <R : Comparable<R>> DoubleArray.sortedByDescending( | ||
crossinline selector: (Double) -> R? | crossinline selector: (Double) -> R? | ||
): List<Double> | ): List<Double> | ||
inline fun <R : Comparable<R>> BooleanArray. | inline fun <R : Comparable<R>> BooleanArray.sortedByDescending( | ||
crossinline selector: (Boolean) -> R? | crossinline selector: (Boolean) -> R? | ||
): List<Boolean> | ): List<Boolean> | ||
inline fun <R : Comparable<R>> CharArray. | inline fun <R : Comparable<R>> CharArray.sortedByDescending( | ||
crossinline selector: (Char) -> R? | crossinline selector: (Char) -> R? | ||
): List<Char> | ): List<Char> | ||
inline fun <T, R : Comparable<R>> Iterable<T>. | inline fun <T, R : Comparable<R>> Iterable<T>.sortedByDescending( | ||
crossinline selector: (T) -> R? | crossinline selector: (T) -> R? | ||
): List<T> | ): List<T> | ||
</syntaxhighlight> | </syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]]. | ||
== القيمة المُعادة == | == القيمة المُعادة == | ||
[[Kotlin/List|لائحة]] تضم عناصر [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[kotlin/MutableList|اللائحة المتغيرة]] (<code>MutableList</code>) التي استُدعيت عبرها مرتبة وفقًا للقيم التي تعيدها الدالة المُمرّرة <code>selector</code>. | [[Kotlin/List|لائحة]] تضم عناصر [[Kotlin/Array|المصفوفة]] أو <nowiki/>[[kotlin/MutableList|اللائحة المتغيرة]] (<code>MutableList</code>) التي استُدعيت عبرها مرتبة ترتيبًا تنازليًا وفقًا للقيم التي تعيدها الدالة المُمرّرة <code>selector</code>. | ||
==أمثلة== | ==أمثلة== | ||
===استخدام الدالة <code>()sortedByDescending</code> مع المصفوفات=== | ===استخدام الدالة <code>()sortedByDescending</code> مع المصفوفات=== | ||
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] <nowiki/>باسم <code>array</code> مكونة من ستة عناصر باستخدام الدالة <code>()arrayOf</code>، ثم تستخدم الدالة<code>()sortedByDescending</code> على <code>array</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. | print (array.sortedByDescending {it*it}) // [9, 7, 6, 5, -3, 1] | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
سطر 54: | سطر 54: | ||
* <code>[[Kotlin/collections/sort|sort()]]</code> : تقوم بترتيب <nowiki/>[[Kotlin/Array|المصفوفة]] أو اللائحة المتغيرة (<code>MutableList</code>) التي استُدعيت عبرها. | * <code>[[Kotlin/collections/sort|sort()]]</code> : تقوم بترتيب <nowiki/>[[Kotlin/Array|المصفوفة]] أو اللائحة المتغيرة (<code>MutableList</code>) التي استُدعيت عبرها. | ||
* <code>[[Kotlin/collections/sorted|sorted()]]</code> : تعيد لائحة تضم عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو المجموعة التكرارية التي استُدعيت عبرها مرتبة وفق الترتيب الطبيعي. | * <code>[[Kotlin/collections/sorted|sorted()]]</code> : تعيد لائحة تضم عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو المجموعة التكرارية التي استُدعيت عبرها مرتبة وفق الترتيب الطبيعي. | ||
* <code>[[Kotlin/collections/sortedBy|sortedBy()]]</code> : تعيد لائحة تضم عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو المجموعة التكرارية التي استُدعيت عبرها مرتبة ترتيبًا طبيعيًا وفقًا للقيم التي تعيدها الدالة المُمرّرة <code>selector</code>. | |||
==مصادر== | ==مصادر== | ||
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sorted-by.html الدالة sortedByDescending() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | *[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sorted-by-descending.html الدالة sortedByDescending() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Functions]] | [[تصنيف:Kotlin Functions]] |
مراجعة 19:03، 6 يونيو 2018
تعيد الدالةsortedByDescending()
لائحة تضم عناصر المصفوفة أو اللائحة المتغيرة (MutableList
) التي استُدعيت عبرها مرتبة ترتيبًا تنازليًا وفقًا للقيم التي تعيدها الدالة المُمرّرة selector
.
البنية العامة
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).
القيمة المُعادة
لائحة تضم عناصر المصفوفة أو اللائحة المتغيرة (MutableList
) التي استُدعيت عبرها مرتبة ترتيبًا تنازليًا وفقًا للقيم التي تعيدها الدالة المُمرّرة selector
.
أمثلة
استخدام الدالة ()sortedByDescending
مع المصفوفات
تعرف الشيفرة الآتية مصفوفة باسم array
مكونة من ستة عناصر باستخدام الدالة ()arrayOf
، ثم تستخدم الدالة()sortedByDescending
على array
لترتيبه تنازليًا وفق القيم التي تعيدها الدالة المٌمرّرة، ثم تطبع الناتج:
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]
}
أنظر أيضًا
sortBy()
: تقوم بترتيب المصفوفة أو اللائحة المتغيرة (MutableList
) التي استُدعيت عبرها وفقًا للقيم التي تعيدها الدالة المُمرّرة .
sort()
: تقوم بترتيب المصفوفة أو اللائحة المتغيرة (MutableList
) التي استُدعيت عبرها.sorted()
: تعيد لائحة تضم عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت عبرها مرتبة وفق الترتيب الطبيعي.
sortedBy()
: تعيد لائحة تضم عناصر المصفوفة أو المجموعة التكرارية التي استُدعيت عبرها مرتبة ترتيبًا طبيعيًا وفقًا للقيم التي تعيدها الدالة المُمرّرةselector
.