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

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>minBy()‎</code> في لغة Kotlin}}</noinclude> تعيد الدالة<code>minBy()‎</code> العنصر الأول ف...'
 
لا ملخص تعديل
سطر 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>selector</code>، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك.


في حال استدعاء الدالة <code>minBy()‎</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في  ذلك [[Kotlin/Map|القاموس]] والذي له أكبر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك.
في حال استدعاء الدالة <code>minBy()‎</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في  ذلك [[Kotlin/Map|القاموس]] والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك.


==البنية العامة==
==البنية العامة==
سطر 43: سطر 43:
</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> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في  ذلك [[Kotlin/Map|القاموس]] والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك.
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()minBy</code> مع المصفوفات===
===استخدام الدالة <code>()minBy</code> مع المصفوفات===
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]]<nowiki/> باسم <code>array</code>مكونة من أربعة [[Kotlin/String|سلاسل نصية]] باستخدام الدالة <code>()arrayOf</code>، ثم تستدعي الدالة <code>()maxBy</code> عبر <code>array</code> مع تمرير دالة تعيد طول [[Kotlin/String|السلسلة النصية]] للحصول على أكبر [[Kotlin/String|سلسلة نصية]] في المصفوفة <code>array</code> من حيث الطول<nowiki/>، ثم تطبع الناتج:<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("foo", "hsoub", "g", "vol")
          
          
println(array.maxBy {it.length})  // hsoub
println(array.minBy {it.length})  // g
}
}
</syntaxhighlight>
</syntaxhighlight>
سطر 61: سطر 61:


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

مراجعة 13:02، 31 مايو 2018

تعيد الدالةminBy()‎ العنصر الأول في المصفوفة أو المجموعة التي استُدعيت عبره والذي له أصغر قيمة معادة من الدالة الممررة selector، أو null إن لم يكن هناك أي عنصر يحقق ذلك.

في حال استدعاء الدالة minBy()‎ عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أصغر قيمة معادة من الدالة الممررة selector، أو null إن لم يكن هناك أي مدخل يحقق ذلك.

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

يمكن استدعاء الدالة 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?

يمكن استدعاء الدالة minBy()‎ عبر القواميس:

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

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

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

في حال استدعاء الدالة minBy()‎ عبر قاموس فستعيد المدخل (Entry) الأول في ذلك القاموس والذي له أصغر قيمة معادة من الدالة الممررة selector، أو null إن لم يكن هناك أي مدخل يحقق ذلك.

أمثلة

استخدام الدالة ()minBy مع المصفوفات

تعرف الشيفرة الآتية مصفوفة باسم array مكونة من أربعة سلاسل نصية باستخدام الدالة ()arrayOf، ثم تستدعي الدالة ()minBy عبر array مع تمرير دالة تعيد طول السلاسل النصية للحصول على أصغر سلسلة نصية في المصفوفة array من حيث الطول، ثم تطبع الناتج:

fun main(args: Array<String>) {
val array = arrayOf("foo", "hsoub", "g", "vol")
        
println(array.minBy {it.length})   // g
}

انظر أيضًا

مصادر