الدالة ‎downTo()‎ في Kotlin

من موسوعة حسوب

تنشئ الدالة ‎downTo()‎ مجالًا متدرجًا (progression) يبدًأ من القيمة القصوى التي استُدعيت معها وينحدر تنازليًّا حتى يصل إلى القيمة الممرّرة إليها. ينبغي أن تكون القيمة الممرَّرة أصغر من القيمة التي استُدعيت معها الدالة، وإلّا ستعيد الدالة مجالا متدرجا فارغًا.

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

infix fun Int.downTo(to: Byte): IntProgression 
infix fun Long.downTo(to: Byte): LongProgression 
infix fun Byte.downTo(to: Byte): IntProgression 
infix fun Short.downTo(to: Byte): IntProgression 
infix fun Char.downTo(to: Char): CharProgression 
infix fun Int.downTo(to: Int): IntProgression 
infix fun Long.downTo(to: Int): LongProgression 
infix fun Byte.downTo(to: Int): IntProgression 
infix fun Short.downTo(to: Int): IntProgression
infix fun Int.downTo(to: Long): LongProgression 
infix fun Long.downTo(to: Long): LongProgression 
infix fun Byte.downTo(to: Long): LongProgression 
infix fun Short.downTo(to: Long): LongProgression 
infix fun Int.downTo(to: Short): IntProgression 
infix fun Long.downTo(to: Short): LongProgression 
infix fun Byte.downTo(to: Short): IntProgression 
infix fun Short.downTo(to: Short): IntProgression

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

يعاد مجالٌ متدرجٌ (progression) يبدًأ من القيمة القصوى التي استُدعيت معها وينحدر تنازليًّا حتى يصل إلى القيمة to الممرّرة.

أمثلة

استعمال الدالة downTo()‎ لطباعة القيم الواقعة بين العدد 9 والعدد 4:

fun main(args: Array<String>) {    
    val x = 9 
    val y = 4
    val p = x.downTo(y) 
    
    for (a in p) print(a) // 987654
}

انظر أيضًا

  • الدالة rangeTo()‎: تنشئ مجالًا يقع بين المحرف الذي استدعي معها والمحرف المُمرّر إليها.
  • الدالة until()‎: تنشئ مجالًا (range) تصاعديًا يبدأ القيمة التي استُدعيت معها وحتى القيمة الممرّرة إليها (لا تدخل هذه القيمة ضمن المجال). 

مصادر