الفرق بين المراجعتين لصفحة: «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>minBy()</code> العنصر الأول في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك. | ||
في حال استدعاء الدالة <code>minBy()</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في ذلك [[Kotlin/Map|القاموس]] والذي له | في حال استدعاء الدالة <code>minBy()</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في ذلك [[Kotlin/Map|القاموس]] والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك. | ||
==البنية العامة== | ==البنية العامة== | ||
| سطر 43: | سطر 43: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==القيم المٌعادة== | ==القيم المٌعادة== | ||
العنصر الأول في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له | العنصر الأول في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أصغر قيمة معادة من الدالة الممررة <code>selector</code>، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك. | ||
في حال استدعاء الدالة <code>minBy()</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في ذلك [[Kotlin/Map|القاموس]] والذي له | في حال استدعاء الدالة <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>() | تعرف الشيفرة الآتية <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. | println(array.minBy {it.length}) // g | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| سطر 61: | سطر 61: | ||
==مصادر== | ==مصادر== | ||
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/ | *[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
}