الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/maxBy»

من موسوعة حسوب
لا ملخص تعديل
مراجعة وتدقيق.
 
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع text.maxBy()‎ في لغة Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE: الدالة <code>CharSequence.maxBy()‎</code> في Kotlin}}</noinclude>
تعيد الدالة <code>maxBy()</code>‎ أول حرف  في [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها والذي يعيد أكبر قيمة بعد تمريره إلى الدالة <code>selector</code> أو تعيد <code>null</code> إن كانت [[Kotlin/CharSequence/index|سلسلة الحروف]] فارغة.
تجلب الدالة <code>maxBy()</code> المحرف من <nowiki/>[[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها والذي أعيدت معه أكبر قيمة عند تطبيق دالة معيَّنة عليه.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="kotlin">
<syntaxhighlight lang="kotlin">
سطر 6: سطر 6:
     selector: (Char) -> R
     selector: (Char) -> R
): Char?  
): Char?  
</syntaxhighlight>يُلاحَظ وجود الكلمة المفتاحية <code>inline</code> للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع <nowiki/>[[Kotlin/inline functions|توثيق الدوال المباشرة (inline functions)]].
</syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة <nowiki/>[[Kotlin/inline functions|الدوال المباشرة (inline functions)]]).
 
== المعاملات ==
 
=== <code>selector</code> ===
دالةٌ تطبَّق على كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] المعطاة. يمرر إليها المحرف، وتعيد قيمة مقابلة له.


==القيم المعادة==
==القيم المعادة==
[[Kotlin/Char/index|حرف]].
يعاد المحرف من [[Kotlin/CharSequence|السلسلة]] المعطاة والذي أعطى أكبر قيمة عند تطبيق الدالة <code>selector</code> عليه، أو تُعاد القيمة <code>null</code> إن لم يكن هناك أي محرف.
==أمثلة==
==أمثلة==
===استخدام الدالة <code>maxBy()‎</code> مع السلاسل النصية===
مثالٌ على استعمال الدالة <code>maxBy()‎</code>:<syntaxhighlight lang="kotlin">
تُعرّف الشيفرة الآتية [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، ثم تستدعي الدالة <code>maxBy()‎</code> عبرها مع تمرير دالة، ثم تطبع الناتج:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
val str = "Hsoub Wiki"  
    val str = "Hsoub Wiki"
      
 
print( str.maxBy {it.toUpperCase()} ) // W
     print(str.maxBy {it.toInt() }) // u
}
}
</syntaxhighlight>
</syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
*<code>[[Kotlin/kotlin.text/min|min()]]</code>: تعيد الدالة <code>min()</code>‎ أصغر حرف في [[Kotlin/String|السلسلة النصية]] التي استٌدعيت عبرها أو تعيد <code>null</code> إن كانت فارغة.
*الدالة <code>[[Kotlin/kotlin.text/minBy|minBy()]]</code>: تجلب المحرف من <nowiki/>[[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها والذي أعيدت معه أصغر قيمة عند تطبيق دالة معيَّنة عليه.  
 
* <code>[[Kotlin/kotlin.text/max|max()]]‎</code>: تعيد الدالة <code>max()</code>‎ أكبر حرف في السلسلة النصية التي استٌدعيت عبرها أو تعيد <code>null</code> إن كانت فارغة.


*<code>[[Kotlin/kotlin.text/minBy|minBy()]]‎</code>: تعيد الدالة <code>minBy()</code>‎ أول حرف  في [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استٌدعيت عبرها والذي يعيد أصغر قيمة بعد تمريره إلى الدالة <code>selector</code> أو تعيد <code>null</code> إن كانت [[Kotlin/CharSequence/index|سلسلة الحروف]] فارغة.
* الدالة <code>[[Kotlin/kotlin.text/max|max()]]‎</code>: تعيد أكبر محرف من محارف [[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها.
*الدالة <code>[[Kotlin/kotlin.text/maxWith|maxWith()‎]]</code>: تجلب  المحرف الأول من <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] التي استُدعيت معها والذي له أكبر قيمة بحسب الموازن <code>comparator</code> المعطى.
==مصادر==
==مصادر==
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/max-by.html صفحة الدالة text.maxBy()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/max-by.html صفحة الدالة CharSequence.maxBy()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Method]]
[[تصنيف:Kotlin Function]]
[[تصنيف:Kotlin Text]]
[[تصنيف:Kotlin CharSequence]]

المراجعة الحالية بتاريخ 11:33، 4 سبتمبر 2018

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

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

inline fun <R : Comparable<R>> CharSequence.maxBy(
    selector: (Char) -> R
): Char?

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

المعاملات

selector

دالةٌ تطبَّق على كل محرف من محارف السلسلة المعطاة. يمرر إليها المحرف، وتعيد قيمة مقابلة له.

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

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

أمثلة

مثالٌ على استعمال الدالة maxBy()‎:

fun main(args: Array<String>) {
    val str = "Hsoub Wiki"

    print(str.maxBy {it.toInt() }) // u
}

انظر أيضًا

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

مصادر