Kotlin в IntelliJ IDEA Kotlin змінні Kotlin типи даних Kotlin операції з числами Kotlin умовні вирази Kotlin умовні конструкції Kotlin цикли Kotlin послідовності Kotlin масиви Kotlin функціональне програмування Kotlin змінна кількість параметрів. Vararg Kotlin повернення результату. оператор return Kotlin однорядкові і локальні функції Kotlin перевантаження функцій Kotlin Лямбда-вирази Kotlin функції вищого порядку Kotlin Анонімні функції Kotlin ООП Класи і об'єкти Kotlin ООП властивості Kotlin ООП конструктор Kotlin ООП функції в класах Kotlin ООП Пакети та імпорт Kotlin ООП модифікатори видимості Kotlin ООП вкладені класи Kotlin ООП інтерфейси Kotlin ООП спадкування Kotlin ООП Перевизначення методів і властивостей Kotlin ООП Абстрактні класи та методи Kotlin ООП Data-класи Kotlin ООП перерахування enums Kotlin ООП Null і nullable-типи Kotlin ООП Обробка винятків Kotlin ООП перетворення типів Kotlin ООП Інфіксна функція Kotlin ООП функції розширення Kotlin ООП Узагальнені класи і функції Kotlin ООП обмеження узагальнень Kotlin ООП Варіантність, коваріантність і контраваріантність Kotlin Колекції. Змінювані і незмінні колекції Kotlin Колекції. LIST список Kotlin Колекції. Set Kotlin Колекції. Map

Kotlin послідовності


Послідовність являє набір значень або діапазон. Для створення послідовності застосовується оператор .. :

var range = 1..5    // последовательность [1, 2, 3, 4, 5]

Цей оператор приймає два значення - кордону послідовності, і всі елементи між цими значеннями (включаючи їх самих) складають послідовність.

Послідовність необов'язково повинна представляти числові дані. Наприклад, це можуть бути рядки:

var range =  "a".."d"

Оператор .. дозволяє створити послідовність по наростаючій, де кожен наступний елемент буде більше попереднього. За допомогою спеціальної функції downTo можна побудувати послідовність в зворотному порядку:

var range1 =  1..5      // 1 2 3 4 5
var range2 =  5 downTo 1    // 5 4 3 2 1

Ще одна спеціальна функція step дозволяє задати крок, на який будуть змінюватися наступні елементи:

var range1 = 1..10 step 2           // 1 3 5 7 9
var range2 = 10 downTo 1 step 3     // 10 7 4 1

Ще одна функція until дозволяє не включати верхню межу в саму послідовність:

var range1 = 1 until 9          // 1 2 3 4 5 6 7 8
var range2 = 1 until 9 step 2   // 1 3 5 7

За допомогою спеціальних операторів можна перевірити наявність або відсутність елементів в послідовності:

  • in : повертає true, якщо об'єкт є в послідовності

  • ! in : повертає true, якщо об'єкт відсутній в послідовності

fun main(args: Array<String>) {
 
    var range = 1..5
 
    var isInRange = 5 in range
    println(isInRange)      // true
 
    isInRange = 86 in range
    println(isInRange)      // false
 
    var isNotInRange = 6 !in range
    println(isNotInRange)   // true
 
    isNotInRange = 3 !in range
    println(isNotInRange)   // false
}

За допомогою циклу for можна перебирати послідовність:

var range1 = 5 downTo 1 
for(c in range1) print(c)   // 54321
println()
for(c in 1..9) print(c)     // 123456789
println()
for(c in 1 until 9) print(c)    // 12345678
println()
for(c in 1..9 step 2) print(c)  // 13579

Наш партнер:
beta test mp3 playlist downloader