الفرق بين المراجعتين لصفحة: «Kotlin/kotlin.text/filterIndexedTo»
< Kotlin | kotlin.text
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: الدالة <code>text.filterIndexedTo()</code> في لغة Kotlin}}</noinclude> تضيف الدالة <code>filterIndexedTo()</code>...' |
لا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: الدالة <code>text.filterIndexedTo()</code> في لغة Kotlin}}</noinclude> | <noinclude>{{DISPLAYTITLE: الدالة <code>text.filterIndexedTo()</code> في لغة Kotlin}}</noinclude> | ||
تضيف الدالة <code>filterIndexedTo()</code> كل الحروف من [[Kotlin/CharSequence/index|سلسلة الحروف]] | تضيف الدالة <code>filterIndexedTo()</code> كل الحروف من [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استُدعيت عبرها والتي تحقق الشرط المنطقي <code>predicate</code> إلى الوسيط المُمرّر <code>destination</code>. يمرَّر فهرس كل عنصر وقيمته إلى الدالة <code>predicate()</code> ثم تعيد بدورها قيمة منطقيَّة. | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="kotlin"> | <syntaxhighlight lang="kotlin"> | ||
سطر 14: | سطر 14: | ||
==أمثلة== | ==أمثلة== | ||
===استخدام الدالة <code>()filterIndexedTo</code> مع سلسلة نصية=== | ===استخدام الدالة <code>()filterIndexedTo</code> مع سلسلة نصية=== | ||
تعرِّف الشيفرة الآتية [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، وتعرّف كائنا من الصنف [[Kotlin/kotlin.text/StringBuilder/index|<code>StringBuilder</code>]] باسم <code>sb</code>، ثمَّ تستدعي الدالة <code>()filterIndexedTo</code> عبرها مع تمرير <code>sb</code> ودالة منطقية | تعرِّف الشيفرة الآتية [[Kotlin/String|سلسلة نصية]] باسم <code>str</code>، وتعرّف كائنا من الصنف [[Kotlin/kotlin.text/StringBuilder/index|<code>StringBuilder</code>]] باسم <code>sb</code>، ثمَّ تستدعي الدالة <code>()filterIndexedTo</code> عبرها مع تمرير <code>sb</code> ودالة منطقية كوسيطين، <nowiki/>ثمَّ تطبع الناتج:<syntaxhighlight lang="kotlin"> | ||
fun main(args: Array<String>) { | fun main(args: Array<String>) { | ||
val str = "Hsoub Academy" | val str = "Hsoub Academy" | ||
سطر 23: | سطر 23: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* <code>[[Kotlin/kotlin.text/filterIndexed|filterIndexed()]]</code>: تعيد الدالة <code>filterIndexed()</code> كل الحروف من [[Kotlin/CharSequence/index|سلسلة الحروف]] التي استُدعيت عبرها والتي تحقق الشرط المنطقي. يمرَّر فهرس كل عنصر وقيمته إلى الدالة <code>predicate()</code> ثم تعيد بدورها قيمة منطقيَّة. | |||
* <code>[[Kotlin/kotlin.text/elementAt|elementAt()]]</code>: تعيد الحرف الموجود في الفهرس المُحدّد في سلسلة الحروف التي استُدعيت عبرها، في حال كان الفهرس خارج الحدود فستطلق الاستثناء <code>IndexOutOfBoundsException</code>. | * <code>[[Kotlin/kotlin.text/elementAt|elementAt()]]</code>: تعيد الحرف الموجود في الفهرس المُحدّد في سلسلة الحروف التي استُدعيت عبرها، في حال كان الفهرس خارج الحدود فستطلق الاستثناء <code>IndexOutOfBoundsException</code>. | ||
سطر 28: | سطر 30: | ||
==مصادر== | ==مصادر== | ||
*[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/filter-indexed-to.html الدالة text. | *[http://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/filter-indexed-to.html الدالة text.filterIndexedTo() في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.] | ||
[[تصنيف:Kotlin]] | [[تصنيف:Kotlin]] | ||
[[تصنيف:Kotlin Functions]] | [[تصنيف:Kotlin Functions]] |
مراجعة 19:23، 8 يوليو 2018
تضيف الدالة filterIndexedTo()
كل الحروف من سلسلة الحروف التي استُدعيت عبرها والتي تحقق الشرط المنطقي predicate
إلى الوسيط المُمرّر destination
. يمرَّر فهرس كل عنصر وقيمته إلى الدالة predicate()
ثم تعيد بدورها قيمة منطقيَّة.
البنية العامة
inline fun <C> CharSequence.filterIndexedTo(
destination: C,
predicate: (index: Int, Char) -> Boolean
): C
يُلاحَظ وجود الكلمة المفتاحية inline
للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيم المعادة
الوسيط المُمرّر destination
.
أمثلة
استخدام الدالة ()filterIndexedTo
مع سلسلة نصية
تعرِّف الشيفرة الآتية سلسلة نصية باسم str
، وتعرّف كائنا من الصنف StringBuilder
باسم sb
، ثمَّ تستدعي الدالة ()filterIndexedTo
عبرها مع تمرير sb
ودالة منطقية كوسيطين، ثمَّ تطبع الناتج:
fun main(args: Array<String>) {
val str = "Hsoub Academy"
val list = StringBuilder()
println(str.filterIndexedTo (list){index, char -> (char.toByte() < index + 97) }) // Hb Acade
}
انظر أيضًا
filterIndexed()
: تعيد الدالةfilterIndexed()
كل الحروف من سلسلة الحروف التي استُدعيت عبرها والتي تحقق الشرط المنطقي. يمرَّر فهرس كل عنصر وقيمته إلى الدالةpredicate()
ثم تعيد بدورها قيمة منطقيَّة.
elementAt()
: تعيد الحرف الموجود في الفهرس المُحدّد في سلسلة الحروف التي استُدعيت عبرها، في حال كان الفهرس خارج الحدود فستطلق الاستثناءIndexOutOfBoundsException
.
compareTo()
: تقارن بين سلسلتين نصيتين.