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

من موسوعة حسوب
لا ملخص تعديل
طلا ملخص تعديل
 
(4 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: الدالة <code>maxWith()‎</code> في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>maxWith()‎</code> في Kotlin}}</noinclude>
تعيد الدالة<code>maxWith()‎</code> العنصر الأول في  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أكبر قيمة بحسب المقارِن <code>comparator</code> الممرّر، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك.
تجلب الدالة <code>maxWith()‎</code> العنصر أو الزوج الأول من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة التي استُدعيت معها والذي له أكبر قيمة بحسب الموازن <code>comparator</code> المعطى.
 
في حال استدعاء الدالة <code>maxWith()‎</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في  ذلك [[Kotlin/Map|القاموس]] والذي له أكبر قيمة حسب المقارِن <code>comparator</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك.
 
==البنية العامة==
==البنية العامة==
يمكن استدعاء الدالة <code>maxWith()‎</code> عبر  '''[[Kotlin/Array|المصفوفات]] و [[Kotlin/collections|المجموعات]]:'''<syntaxhighlight lang="kotlin">
يمكن استدعاء الدالة <code>maxWith()‎</code> مع [[Kotlin/Array|المصفوفات]] و [[Kotlin/collections|المجموعات]] والخرائط:<syntaxhighlight lang="kotlin">
fun <T> Array<out T>.maxWith(
fun <T> Array<out T>.maxWith(
     comparator: Comparator<in T>
     comparator: Comparator<in T>
): T?  
): T?
fun ByteArray.maxWith(comparator: Comparator<in Byte>): Byte?  
fun ByteArray.maxWith(comparator: Comparator<in Byte>): Byte? (source)
fun ShortArray.maxWith(
fun ShortArray.maxWith(
     comparator: Comparator<in Short>
     comparator: Comparator<in Short>
): Short?
): Short?
fun IntArray.maxWith(comparator: Comparator<in Int>): Int?
fun IntArray.maxWith(comparator: Comparator<in Int>): Int? (source)
fun LongArray.maxWith(comparator: Comparator<in Long>): Long?  
fun LongArray.maxWith(comparator: Comparator<in Long>): Long? (source)
fun FloatArray.maxWith(
fun FloatArray.maxWith(
     comparator: Comparator<in Float>
     comparator: Comparator<in Float>
): Float?
): Float?  
fun DoubleArray.maxWith(
fun DoubleArray.maxWith(
     comparator: Comparator<in Double>
     comparator: Comparator<in Double>
): Double?
): Double?  
fun BooleanArray.maxWith(
fun BooleanArray.maxWith(
     comparator: Comparator<in Boolean>
     comparator: Comparator<in Boolean>
): Boolean?  
): Boolean?  
fun CharArray.maxWith(comparator: Comparator<in Char>): Char?  
fun CharArray.maxWith(comparator: Comparator<in Char>): Char? (source)
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T?  
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T? (source)
 


</syntaxhighlight>'''بيئة التشغيل: JVM'''<syntaxhighlight lang="kotlin">
fun <T> Array<out T>.maxWith(
    comparator: Comparator<in T>
): T?
fun ByteArray.maxWith(comparator: Comparator<in Byte>): Byte?
fun ShortArray.maxWith(
    comparator: Comparator<in Short>
): Short?
fun IntArray.maxWith(comparator: Comparator<in Int>): Int?
fun LongArray.maxWith(comparator: Comparator<in Long>): Long?
fun FloatArray.maxWith(
    comparator: Comparator<in Float>
): Float?
fun DoubleArray.maxWith(
    comparator: Comparator<in Double>
): Double?
fun BooleanArray.maxWith(
    comparator: Comparator<in Boolean>
): Boolean?
fun CharArray.maxWith(comparator: Comparator<in Char>): Char?
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T?
</syntaxhighlight>'''بيئة التشغيل: JS'''
يمكن استدعاء الدالة <code>maxWith()‎</code> عبر [[Kotlin/Map|القواميس]]:<syntaxhighlight lang="kotlin">
inline fun <K, V> Map<out K, V>.maxWith(
inline fun <K, V> Map<out K, V>.maxWith(
     comparator: Comparator<in Entry<K, V>>
     comparator: Comparator<in Entry<K, V>>
): Entry<K, V>?
): Entry<K, V>?
</syntaxhighlight>'''بيئة التشغيل: JVM'''<syntaxhighlight lang="kotlin">
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
inline fun <K, V> Map<out K, V>.maxWith(
    comparator: Comparator<in Entry<K, V>>
): Entry<K, V>?
</syntaxhighlight>'''بيئة التشغيل: JS'''


يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
== المعاملات ==


==القيم المٌعادة==
=== <code>comparator</code> ===
العنصر الأول في  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبره والذي له أكبر قيمة بحسب دالة المقارنة <code>comparator</code> الممرّرة، أو <code>null</code> إن لم يكن هناك أي عنصر يحقق ذلك.
دالةٌ تمثل الموزان الذي سيُطبَّق على كل عنصر من عناصر [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة المعطاة.


في حال استدعاء الدالة <code>maxWith()‎</code> عبر [[Kotlin/Map|قاموس]] فستعيد المدخل (Entry) الأول في  ذلك [[Kotlin/Map|القاموس]] والذي له أكبر قيمة حسب دالة المقارنة <code>comparator</code>، أو <code>null</code> إن لم يكن هناك أي مدخل يحقق ذلك.
==القيم المعادة==
يُعاد العنصر أو الزوج الأول من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة المعطاة والذي له أكبر قيمة بحسب الدالة <code>comparator</code> الموازنة المعطاة، أو القيمة <code>null</code> إن لم يكن هنالك أي عنصر.
==أمثلة==
==أمثلة==
===استخدام الدالة <code>()maxWith</code> مع المصفوفات===
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفةً]] باسم <code>array</code> باستخدام الدالة <code>()arrayOf</code> ثم تستدعي الدالة <code>()maxWith</code> مع تلك المصفوفة مع تمرير الدالة <code>comparator</code> الموازنة:<syntaxhighlight lang="kotlin">
تعرف الشيفرة الآتية <nowiki/>[[Kotlin/Array|مصفوفة]]<nowiki/> باسم <code>array</code>مكونة من ستة أعداد باستخدام الدالة <code>()arrayOf</code>، ثم تستدعي الدالة <code>()maxWith</code> عبر <code>array</code> مع تمرير مقارِن <code>comparator</code><nowiki/>، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
     val array = arrayOf(1, 2, 3, 4, 5,6)
     val array = arrayOf(1, 2, 4, 8, 16, 32)


     println(array.maxWith(Comparator { a, b -> b - a })) // 1
     println(array.maxWith(Comparator { a, b -> b - a })) // 1
}
}
</syntaxhighlight>
</syntaxhighlight>
===انظر أيضًا===
==انظر أيضًا==
*<code>[[Kotlin/collections/min|min()]]</code>: تعيد أصغر عنصر في  [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، أو <code>null</code> إن كانت فارغة.
*الدالة <code>[[Kotlin/collections/minWith|minWith()]]</code>: تجلب العنصر أو الزوج الأول من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة التي استُدعيت معها والذي له أصغر قيمة بحسب الموازن <code>comparator</code> المعطى.
 
*الدالة <code>[[Kotlin/collections/max|max()]]</code>‎: تجلب أكبر عنصر في [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] التي استُدعيت معها.
* <code>[[Kotlin/collections/max|max()]]</code>‎: تعيد أكبر عنصر في <nowiki/>[[Kotlin/Array|المصفوفة]] أو <nowiki/>[[Kotlin/collections|المجموعة]] التي استُدعيت عبرها، أو <code>null</code> إن كانت فارغة.
*الدالة <code>[[Kotlin/collections/maxBy|maxBy()‎]]</code>: تجلب العنصر أو الزوج الأول من [[Kotlin/Array|المصفوفة]] أو [[Kotlin/collections|المجموعة]] أو الخريطة التي استُدعيت معها والذي أعيدت معه أكبر قيمة عند تطبيق دالة معيَّنة عليه.
 
==مصادر==
==مصادر==
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/max-with.html الدالة  maxWith()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/max-with.html صفحة الدالة maxWith()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Functions]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Collection]]

المراجعة الحالية بتاريخ 09:24، 8 سبتمبر 2018

تجلب الدالة maxWith()‎ العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها والذي له أكبر قيمة بحسب الموازن comparator المعطى.

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

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

fun <T> Array<out T>.maxWith(
    comparator: Comparator<in T>
): T?
fun ByteArray.maxWith(comparator: Comparator<in Byte>): Byte? (source)
fun ShortArray.maxWith(
    comparator: Comparator<in Short>
): Short?
fun IntArray.maxWith(comparator: Comparator<in Int>): Int? (source)
fun LongArray.maxWith(comparator: Comparator<in Long>): Long? (source)
fun FloatArray.maxWith(
    comparator: Comparator<in Float>
): Float? 
fun DoubleArray.maxWith(
    comparator: Comparator<in Double>
): Double? 
fun BooleanArray.maxWith(
    comparator: Comparator<in Boolean>
): Boolean? 
fun CharArray.maxWith(comparator: Comparator<in Char>): Char? (source)
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T? (source)

inline fun <K, V> Map<out K, V>.maxWith(
    comparator: Comparator<in Entry<K, V>>
): Entry<K, V>?

وجود الكلمة المفتاحية inline يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).

المعاملات

comparator

دالةٌ تمثل الموزان الذي سيُطبَّق على كل عنصر من عناصر المصفوفة أو المجموعة أو الخريطة المعطاة.

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

يُعاد العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة المعطاة والذي له أكبر قيمة بحسب الدالة comparator الموازنة المعطاة، أو القيمة null إن لم يكن هنالك أي عنصر.

أمثلة

تعرف الشيفرة الآتية مصفوفةً باسم array باستخدام الدالة ()arrayOf ثم تستدعي الدالة ()maxWith مع تلك المصفوفة مع تمرير الدالة comparator الموازنة:

fun main(args: Array<String>) {
    val array = arrayOf(1, 2, 4, 8, 16, 32)

    println(array.maxWith(Comparator { a, b -> b - a })) // 1
}

انظر أيضًا

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

مصادر