الفرق بين المراجعتين ل"Kotlin/collections/minBy"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
ط (مراجعة وتدقيق.)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>minBy()‎</code> في لغة Kotlin}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: الدالة <code>minBy()‎</code> في Kotlin}}</noinclude>
تعيد الدالة<code>minBy()‎</code> العنصر الأول في  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك.
+
تجلب الدالة <code>minBy()‎</code> العنصر أو الزوج الأول من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة التي استُدعيت معها والذي أعيدت معه أصغر قيمة عند تطبيق دالة معيَّنة عليه.
 
 
في حال استدعاء الدالة <code>minBy()‎</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في  ذلك [[Kotlin/Map|القاموس]] والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك.
 
 
 
 
==البنية العامة==
 
==البنية العامة==
يمكن استدعاء الدالة <code>minBy()‎</code> عبر  '''[[Kotlin/Array|المصفوفات]] و [[Kotlin/collections|المجموعات]]:'''<syntaxhighlight lang="kotlin">
+
يمكن استدعاء الدالة <code>minBy()‎</code> مع [[Kotlin/Array|المصفوفات]] و [[Kotlin/collections|المجموعات]] والخرائط''':'''<syntaxhighlight lang="kotlin">
 
inline fun <T, R : Comparable<R>> Array<out T>.maxBy(
 
inline fun <T, R : Comparable<R>> Array<out T>.maxBy(
 
     selector: (T) -> R
 
     selector: (T) -> R
سطر 37: سطر 34:
 
): T?
 
): T?
  
</syntaxhighlight>يمكن استدعاء الدالة <code>minBy()‎</code> عبر [[Kotlin/Map|القواميس]]:<syntaxhighlight lang="kotlin">
 
 
inline fun <K, V, R : Comparable<R>> Map<out K, V>.maxBy(
 
inline fun <K, V, R : Comparable<R>> Map<out K, V>.maxBy(
 
     selector: (Entry<K, V>) -> R
 
     selector: (Entry<K, V>) -> R
 
): Entry<K, V>?
 
): Entry<K, V>?
 
</syntaxhighlight>
 
</syntaxhighlight>
==القيم المٌعادة==
+
==القيم المعادة==
العنصر الأول في  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك.
+
يعاد العنصر أو الزوج الأول من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة المعطاة والذي أعطى أصغر قيمة عند تطبيق الدالة <code>selector</code> عليه، أو تُعاد القيمة <code>null</code> إن لم يكن هناك أي عنصر.
 
 
في حال استدعاء الدالة <code>minBy()‎</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في  ذلك [[Kotlin/Map|القاموس]] والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك.
 
 
==أمثلة==
 
==أمثلة==
===استخدام الدالة <code>()minBy</code> مع المصفوفات===
+
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]] باسم <code>array</code> باستخدام الدالة <code>()arrayOf</code> تحوي سلاسل نصية ثمَّ تستدعي الدالة <code>()maxBy</code> لمعرفة أقصر سلسلة نصية:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]]<nowiki/> باسم <code>array</code> مكونة من أربعة [[Kotlin/String|سلاسل نصية]] باستخدام الدالة <code>()arrayOf</code>، ثم تستدعي الدالة <code>()minBy</code> عبر <code>array</code> مع تمرير دالة تعيد طول [[Kotlin/String|السلاسل النصية]] للحصول على أصغر [[Kotlin/String|سلسلة نصية]] في المصفوفة <code>array</code> من حيث الطول<nowiki/>، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
 
 
fun main(args: Array<String>) {
 
fun main(args: Array<String>) {
val array = arrayOf("foo", "hsoub", "g", "vol")
+
    val array = arrayOf("مستقل", "أكاديمية حسوب", "خمسات", "موسوعة حسوب")
       
+
 
println(array.minBy {it.length})   // g
+
    println(array.minBy { it.length }) // مستقل
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
===انظر أيضًا===
+
==انظر أيضًا==
*<code>[[Kotlin/collections/min|min()]]</code>: تعيد أصغر عنصر في  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، أو <code>null</code> إن كانت فارغة.
+
*الدالة <code>[[Kotlin/collections/maxBy|maxBy()]]</code>: تجلب العنصر أو الزوج الأول من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة التي استُدعيت معها والذي أعيدت معه أكبر قيمة عند تطبيق دالة معيَّنة عليه.
 
 
* <code>[[Kotlin/collections/max|max()]]</code>‎: تعيد أكبر عنصر في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، أو <code>null</code> إن كانت فارغة.
 
  
 +
*الدالة <code>[[Kotlin/collections/min|min()]]</code>‎: تجلب أصغر عنصر في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها.
 +
*الدالة <code>[[Kotlin/collections/minWith|minWith()‎]]</code>: تجلب العنصر أو الزوج الأول من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة التي استُدعيت معها والذي له أصغر قيمة بحسب الموازن <code>comparator</code> المعطى.
 
==مصادر==
 
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/min-by.html الدالة  minBy()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
+
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/min-by.html صفحة الدالة minBy()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin]]
 
[[تصنيف:Kotlin Functions]]
 
[[تصنيف:Kotlin Functions]]

مراجعة 15:13، 25 يوليو 2018

تجلب الدالة minBy()‎ العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها والذي أعيدت معه أصغر قيمة عند تطبيق دالة معيَّنة عليه.

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

يمكن استدعاء الدالة minBy()‎ مع المصفوفات و المجموعات والخرائط:

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

inline fun <K, V, R : Comparable<R>> Map<out K, V>.maxBy(
    selector: (Entry<K, V>) -> R
): Entry<K, V>?

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

يعاد العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة المعطاة والذي أعطى أصغر قيمة عند تطبيق الدالة selector عليه، أو تُعاد القيمة null إن لم يكن هناك أي عنصر.

أمثلة

تعرف الشيفرة الآتية مصفوفة باسم array باستخدام الدالة ()arrayOf تحوي سلاسل نصية ثمَّ تستدعي الدالة ()maxBy لمعرفة أقصر سلسلة نصية:

fun main(args: Array<String>) {
    val array = arrayOf("مستقل", "أكاديمية حسوب", "خمسات", "موسوعة حسوب")

    println(array.minBy { it.length }) // مستقل
}

انظر أيضًا

  • الدالة maxBy()‎: تجلب العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها والذي أعيدت معه أكبر قيمة عند تطبيق دالة معيَّنة عليه.

مصادر