الفرق بين المراجعتين لصفحة: «Kotlin/collections/sortBy»
< Kotlin | collections
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>sortBy()</code> في لغة Kotlin}}</noinclude> تقوم الدالة<code>sortBy()</code> بترتيب Kotlin/Ar...' |
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
||
(5 مراجعات متوسطة بواسطة 3 مستخدمين غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code>sortBy()</code> في | <noinclude>{{DISPLAYTITLE: الدالة <code>sortBy()</code> في Kotlin}}</noinclude> | ||
ترتِّب الدالة <code>sortBy()</code> عناصر [[Kotlin/Array|المصفوفة]] أو [[kotlin/collections/MutableList|القائمة المتغيرة]] (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر. | |||
==البنية العامة== | ==البنية العامة== | ||
يمكن استدعاء الدالة <code>sortBy()</code> مع [[Kotlin/Array|المصفوفات]] [[kotlin/collections/MutableList|والقوائم المتغيرة]]:<syntaxhighlight lang="kotlin"> | |||
inline fun <T, R : Comparable<R>> Array<out T>.sortBy( | |||
crossinline selector: (T) -> R?) | |||
fun <T> Array<out T>. | |||
inline fun <T, R : Comparable<R>> MutableList<T>.sortBy( | |||
crossinline selector: (T) -> R?) | |||
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]). | |||
== المعاملات == | |||
=== <code>selector</code> === | |||
دالة تطبق على كل قيمة من قيم المصفوفة أو القائمة المعطاة ثم تعيد قيمة مقابلة لكل عنصر من أجل ترتيب العناصر وفقًا لهذه القيم المعادة. | |||
==أمثلة== | ==أمثلة== | ||
استعمال الدالة <code>()sortBy</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.sortBy { it * it } | |||
print(Arrays.toString(array)) // [1, -3, 5, 6, 7, -9] | |||
print (Arrays.toString(array)) // [1, 3, 5, 6, 7, 9] | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | ==انظر أيضًا== | ||
*<code>[[Kotlin/collections/ | *الدالة <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/sortByDescending|sortByDescending()]]</code>: ترتِّب عناصر [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|القائمة المتغيرة]] (MutableList) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر. | |||
*الدالة <code>[[Kotlin/collections/sortWith|sortWith()]]</code>: ترتِّب جميع عناصر [[Kotlin/Array|المصفوفة]] أو [[kotlin/MutableList|القائمة المتغيرة]] (MutableList) التي استُدعيت معها أو جزءًا محدَّدًا منها تنازليًا وفقًا للمُقارن المُمرّر إليها. | |||
* الدالة <code>[[Kotlin/collections/sortedBy|sortedBy()]]</code>: عناصر <nowiki/>[[Kotlin/Array|المصفوفة]] أو القائمة المتغيرة (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر. | |||
==مصادر== | ==مصادر== | ||
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sort.html الدالة | *[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sort-by.html صفحة الدالة sortBy() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin | [[تصنيف:Kotlin Function]] | ||
[[تصنيف:Kotlin Collection]] |
المراجعة الحالية بتاريخ 11:06، 8 سبتمبر 2018
ترتِّب الدالة sortBy()
عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر.
البنية العامة
يمكن استدعاء الدالة sortBy()
مع المصفوفات والقوائم المتغيرة:
inline fun <T, R : Comparable<R>> Array<out T>.sortBy(
crossinline selector: (T) -> R?)
inline fun <T, R : Comparable<R>> MutableList<T>.sortBy(
crossinline selector: (T) -> R?)
وجود الكلمة المفتاحية inline
يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).
المعاملات
selector
دالة تطبق على كل قيمة من قيم المصفوفة أو القائمة المعطاة ثم تعيد قيمة مقابلة لكل عنصر من أجل ترتيب العناصر وفقًا لهذه القيم المعادة.
أمثلة
استعمال الدالة ()sortBy
لترتيب عناصر مصفوفة بحسب مربَّع كل عنصر:
import java.util.Arrays
fun main(args: Array<String>) {
val array = arrayOf(1, -9, -3, 7, 5, 6)
array.sortBy { it * it }
print(Arrays.toString(array)) // [1, -3, 5, 6, 7, -9]
}
انظر أيضًا
- الدالة
sort()
: ترتب المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تصاعديًّا. - الدالة
sortDescending()
: ترتِّب المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تنازليًّا. - الدالة
sortByDescending()
: ترتِّب عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تنازليًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر. - الدالة
sortWith()
: ترتِّب جميع عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها أو جزءًا محدَّدًا منها تنازليًا وفقًا للمُقارن المُمرّر إليها. - الدالة
sortedBy()
: عناصر المصفوفة أو القائمة المتغيرة (MutableList) التي استُدعيت معها تصاعديًّا وفقًا للقيم التي تعيدها الدالة المُمرّرة إليها عند تطبيقها على كل عنصر.