Загрузка данных


fun main() {

    val words = Array(30) { i ->
        "Строка ${i + 1}"
    }

    println("Исходный массив:")
    println(words.joinToString())

    // Способ 1 — встроенная функция
    val array1 = words.copyOf()

    array1.shuffle()

    println()
    println("Способ 1:")
    println(array1.joinToString())


    // Способ 2 — через random()
    val pool = ArrayList<String>()
    val result = ArrayList<String>()

    for (word in words) {
        pool.add(word)
    }

    while (pool.isNotEmpty()) {

        val randomWord = pool.random()

        result.add(randomWord)

        pool.remove(randomWord)
    }

    println()
    println("Способ 2:")
    println(result.joinToString())
}