الدالة CharSequence.any()‎ في Kotlin

من موسوعة حسوب
مراجعة 15:47، 1 سبتمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (مراجعة وتدقيق.)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تتحقق الدالة CharSequence.any()‎ إن كانت سلسلة من المحارف تحتوي على محرف واحد على أقل تقدير، أو كانت تحتوي على محرف واحد محقق لشرط معين.

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

fun CharSequence.any(): Boolean 

inline fun CharSequence.any(
    predicate: (Char) -> Boolean
): Boolean (source)

المعاملات

predicate

دالةٌ تمثل الشرط المراد تطبيقه على كل محرف من محارف السلسلة النصية المعطاة، إذ يمرر إليها محرفًا وتعيد لهذا المحرف قيمة منطقية.

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

تعاد القيمة true كانت سلسلة المحارف المعطاة تحتوي على محرف واحد على أقل تقدير، أو كانت تحتوي على محرف محقق للشرط المحدد في المعامل predicate، أو تعاد القيمة false خلاف ذلك.

أمثلة

استعمال الدالة any()‎ للتحقق من حواية سلسلة من المحارف محرفًا واحدًا على الأقل:

fun main(args: Array<String>) {
    val emptyList = emptyList<Int>()
    println("emptyList.any() is ${emptyList.any()}") // false

    val nonEmptyList = listOf(1, 2, 3)
    println("nonEmptyList.any() is ${nonEmptyList.any()}") // true
}

استعمال الدالة any()‎ للتحقق من حواية سلسلة من المحارف محرفًا واحدًا محققًا لشرط معين:

fun main(args: Array<String>) {
    val isEven: (Int) -> Boolean = { it % 2 == 0 }
    val zeroToTen = 0..10
    println("zeroToTen.any { isEven(it) } is ${zeroToTen.any { isEven(it) }}") // true
    println("zeroToTen.any(isEven) is ${zeroToTen.any(isEven)}") // true

    val odds = zeroToTen.map { it * 2 + 1 }
    println("odds.any { isEven(it) } is ${odds.any { isEven(it) }}") // false

    val emptyList = emptyList<Int>()
    println("emptyList.any { true } is ${emptyList.any { true }}") // false
}

انظر أيضًا

  • الدالة all(): تتحقق إن كانت جميع محارف سلسلة معينة من المحارف محققةً لشرط معين.  
  • isDefined(): تعيد القيمة true في حال كان الحرف (Unicode code point) الذي استٌدعيت عبره مُعرّفًا في اليونيكود (Unicode).
  • الخاصية indices: تُستخدَم هذه الخاصيّة للحصول على الفهارس الصحيحة (valid indices) لسلسلة الحروف التي استُدعيت عبرها.

مصادر