الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/firstOrNull»
ط استبدال النص - 'Kotlin Functions' ب'Kotlin Function' |
جميل-بيلوني (نقاش | مساهمات) لا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code>text.firstOrNull()</code> في لغة Kotlin}}</noinclude> | <noinclude>{{DISPLAYTITLE: الدالة <code>text.firstOrNull()</code> في لغة Kotlin}}</noinclude> | ||
تجلب الدالة <code>firstOrNull()</code> أول محرف من محارف <nowiki/>[[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها إن لم يُمرَّر إليها أي شيء، أو أول عنصر يحقق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها. | |||
إن كانت <nowiki/>[[Kotlin/CharSequence|سلسلة المحارف]] التي استُدعيت الدالة <code>firstOrNull()</code> معها فارغةً أو لم يكن هناك أي عنصر يحقق الدالة المنطقية الممرَّرة إليها، فستعيد الدالة القيمة <code>null</code>. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
سطر 11: | سطر 12: | ||
): Char? | ): Char? | ||
</syntaxhighlight> | </syntaxhighlight>وجود الكلمة المفتاحية <code>inline</code> يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة <nowiki/>[[Kotlin/inline functions|الدوال المباشرة (inline functions)]]). | ||
== المعاملات == | |||
=== <code>predicate</code> === | |||
دالةٌ تمثل الشرط المراد تطبيقه على كل محرف من محارف [[Kotlin/CharSequence|السلسلة]] المعطاة. يمرر إلى هذه الدالة قيمة المحرف وتعيد قيمةً منطقيةً. | |||
==القيم المعادة== | ==القيم المعادة== | ||
[[Kotlin/ | يُعاد أول محرف من محارف <nowiki/>[[Kotlin/CharSequence|السلسلة]] المعطاة إن لم يُمرَّر إلى الدالة أي معامل، أو أول عنصر يحق الشرط المحدد في المعامل <code>predicate</code> إن أعطي. خلا ذلك، تعاد القيمة <code>null</code>. | ||
==أمثلة== | ==أمثلة== | ||
مثالٌ على استعمال الدالة <code>()firstOrNull</code><nowiki/>:<syntaxhighlight lang="kotlin"> | |||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
println("hsoub Wiki".firstOrNull {it.isUpperCase()}) // W | |||
println("".firstOrNull()) // null | |||
println("".firstOrNull () ) // null | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* <code>[[Kotlin/kotlin.text/first|first()]]</code>: | * الدالة <code>[[Kotlin/kotlin.text/first|first()]]</code>: تجلب أول محرف من محارف <nowiki/>[[Kotlin/CharSequence|السلسلة]] التي استُدعيت معها إن لم يمرر إليها أي شيء، أو أول محرف يحقق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها.<code>[[Kotlin/kotlin.text/find|find()]]</code>: تعيد أول حرف من سلسلة الحروف التي استُدعيت عبرها يحقق الشرط المنطقي <code>predicate.</code> | ||
* الدالة [[Kotlin/kotlin.text/findAnyOf|<code>findAnyOf()</code>]]: تبحث عن آخر ظهور لأيٍّ من [[Kotlin/String|السلاسل النصية]] المعطاة في [[Kotlin/CharSequence/index|سلسلة المحارف]] التي استُدعيت معها. | |||
* <code>[[Kotlin/kotlin.text/filterIndexed|filterIndexed()]]</code>: تعيد الدالة <code>filterIndexed()</code> كل الحروف من سلسلة الحروف التي استُدعيت عبرها والتي تحقق الشرط المنطقي. يمرَّر فهرس كل عنصر وقيمته إلى الدالة <code>predicate()</code> ثم تعيد بدورها قيمة منطقيَّة. | * <code>[[Kotlin/kotlin.text/filterIndexed|filterIndexed()]]</code>: تعيد الدالة <code>filterIndexed()</code> كل الحروف من سلسلة الحروف التي استُدعيت عبرها والتي تحقق الشرط المنطقي. يمرَّر فهرس كل عنصر وقيمته إلى الدالة <code>predicate()</code> ثم تعيد بدورها قيمة منطقيَّة. | ||
سطر 35: | سطر 37: | ||
==مصادر== | ==مصادر== | ||
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/first-or-null.html الدالة | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/first-or-null.html صفحة الدالة firstOrNull() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Function]] | [[تصنيف:Kotlin Function]] |
مراجعة 08:02، 3 سبتمبر 2018
تجلب الدالة firstOrNull()
أول محرف من محارف السلسلة التي استُدعيت معها إن لم يُمرَّر إليها أي شيء، أو أول عنصر يحقق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها.
إن كانت سلسلة المحارف التي استُدعيت الدالة firstOrNull()
معها فارغةً أو لم يكن هناك أي عنصر يحقق الدالة المنطقية الممرَّرة إليها، فستعيد الدالة القيمة null
.
البنية العامة
fun CharSequence.firstOrNull(): Char?
inline fun CharSequence.firstOrNull(
predicate: (Char) -> Boolean
): Char?
وجود الكلمة المفتاحية inline
يدل على أنَّ هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).
المعاملات
predicate
دالةٌ تمثل الشرط المراد تطبيقه على كل محرف من محارف السلسلة المعطاة. يمرر إلى هذه الدالة قيمة المحرف وتعيد قيمةً منطقيةً.
القيم المعادة
يُعاد أول محرف من محارف السلسلة المعطاة إن لم يُمرَّر إلى الدالة أي معامل، أو أول عنصر يحق الشرط المحدد في المعامل predicate
إن أعطي. خلا ذلك، تعاد القيمة null
.
أمثلة
مثالٌ على استعمال الدالة ()firstOrNull
:
fun main(args: Array<String>) {
println("hsoub Wiki".firstOrNull {it.isUpperCase()}) // W
println("".firstOrNull()) // null
}
انظر أيضًا
- الدالة
first()
: تجلب أول محرف من محارف السلسلة التي استُدعيت معها إن لم يمرر إليها أي شيء، أو أول محرف يحقق شرطًا معيَّنًا في حال تمرير دالة منطقية إليها.find()
: تعيد أول حرف من سلسلة الحروف التي استُدعيت عبرها يحقق الشرط المنطقيpredicate.
- الدالة
findAnyOf()
: تبحث عن آخر ظهور لأيٍّ من السلاسل النصية المعطاة في سلسلة المحارف التي استُدعيت معها.
filterIndexed()
: تعيد الدالةfilterIndexed()
كل الحروف من سلسلة الحروف التي استُدعيت عبرها والتي تحقق الشرط المنطقي. يمرَّر فهرس كل عنصر وقيمته إلى الدالةpredicate()
ثم تعيد بدورها قيمة منطقيَّة.
elementAt()
: تعيد الحرف الموجود في الفهرس المُحدّد في سلسلة الحروف التي استُدعيت عبرها، في حال كان الفهرس خارج الحدود فستطلق الاستثناءIndexOutOfBoundsException
.