الدالة text.filterTo()
في لغة Kotlin
< Kotlin | kotlin.text
تضيف الدالة filterTo()
كل الحروف من سلسلة الحروف التي استُدعيت عبرها والتي تحقق الشرط المنطقي predicate
إلى الوسيط المُمرّر destination
. يمرَّر فهرس كل عنصر وقيمته إلى الدالة predicate()
ثم تعيد بدورها قيمة منطقيَّة.
البنية العامة
inline fun <C> CharSequence.filterIndexedTo(
destination: C,
predicate: (index: Int, Char) -> Boolean
): C
يُلاحَظ وجود الكلمة المفتاحية inline
للدلالة على أن هذه الدالة مباشرة، وللمزيد من التفاصيل راجع توثيق الدوال المباشرة (inline functions).
القيم المعادة
الوسيط المُمرّر destination
.
أمثلة
استخدام الدالة ()filterTo
مع سلسلة نصية
تعرِّف الشيفرة الآتية سلسلة نصية باسم str
، وتعرّف كائنا من الصنف StringBuilder
باسم sb
، ثمَّ تستدعي الدالة ()filterTo
عبرها مع تمرير 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()
: تقارن بين سلسلتين نصيتين.