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

من موسوعة حسوب
ط مراجعة وتدقيق.
سطر 5: سطر 5:
fun <T> Array<out T>.maxWith(
fun <T> Array<out T>.maxWith(
     comparator: Comparator<in T>
     comparator: Comparator<in T>
): T? (source)
): T?
fun ByteArray.maxWith(comparator: Comparator<in Byte>): Byte? (source)
fun ByteArray.maxWith(comparator: Comparator<in Byte>): Byte? (source)
fun ShortArray.maxWith(
fun ShortArray.maxWith(
     comparator: Comparator<in Short>
     comparator: Comparator<in Short>
): Short? (source)
): Short?
fun IntArray.maxWith(comparator: Comparator<in Int>): Int? (source)
fun IntArray.maxWith(comparator: Comparator<in Int>): Int? (source)
fun LongArray.maxWith(comparator: Comparator<in Long>): Long? (source)
fun LongArray.maxWith(comparator: Comparator<in Long>): Long? (source)
fun FloatArray.maxWith(
fun FloatArray.maxWith(
     comparator: Comparator<in Float>
     comparator: Comparator<in Float>
): Float? (source)
): Float?  
fun DoubleArray.maxWith(
fun DoubleArray.maxWith(
     comparator: Comparator<in Double>
     comparator: Comparator<in Double>
): Double? (source)
): Double?  
fun BooleanArray.maxWith(
fun BooleanArray.maxWith(
     comparator: Comparator<in Boolean>
     comparator: Comparator<in Boolean>
): Boolean? (source)
): Boolean?  
fun CharArray.maxWith(comparator: Comparator<in Char>): Char? (source)
fun CharArray.maxWith(comparator: Comparator<in Char>): Char? (source)
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T? (source)
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T? (source)
سطر 26: سطر 26:
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>? (source)
): Entry<K, V>?
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة [[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
==القيم المعادة==
==القيم المعادة==

مراجعة 05:48، 29 أغسطس 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 الموازنة المعطاة، أو القيمة 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()‎: تجلب العنصر أو الزوج الأول من المصفوفة أو المجموعة أو الخريطة التي استُدعيت معها والذي أعيدت معه أكبر قيمة عند تطبيق دالة معيَّنة عليه.

مصادر