The toList function in Kotlin is used to convert a sequence into a list. It is part of the Kotlin standard library and allows you to create a list from the elements of a sequence, providing a convenient way to collect the results of sequence operations.
Table of Contents
- Introduction
toListFunction Syntax- Understanding
toList - Examples
- Basic Usage
- Converting a Sequence of Numbers
- Using
toListwith Complex Transformations - Chaining
toListwith Other Functions
- Real-World Use Case
- Conclusion
Introduction
The toList function allows you to convert a sequence into a list. This is useful for scenarios where you want to collect the results of sequence operations into a list, enabling further manipulation and processing of the data in a familiar list format.
toList Function Syntax
The syntax for the toList function is as follows:
fun <T> Sequence<T>.toList(): List<T> Returns:
- A new list containing all the elements of the sequence.
Understanding toList
The toList function takes a sequence and collects its elements into a list. This operation is terminal, meaning it triggers the evaluation of the sequence and produces a concrete collection containing the elements.
Examples
Basic Usage
To demonstrate the basic usage of toList, we will create a sequence and convert it to a list.
Example
fun main() { val numbers = sequenceOf(1, 2, 3, 4, 5) val numberList = numbers.toList() println(numberList) // Output: [1, 2, 3, 4, 5] } Output:
[1, 2, 3, 4, 5] Converting a Sequence of Numbers
This example shows how to convert a sequence of numbers into a list.
Example
fun main() { val evenNumbers = generateSequence(2) { it + 2 }.take(5) val evenNumberList = evenNumbers.toList() println(evenNumberList) // Output: [2, 4, 6, 8, 10] } Output:
[2, 4, 6, 8, 10] Using toList with Complex Transformations
You can use the toList function to collect the results of complex sequence transformations into a list.
Example
fun main() { val numbers = sequenceOf(1, 2, 3, 4, 5) val transformedList = numbers.map { it * 2 } .filter { it > 5 } .toList() println(transformedList) // Output: [6, 8, 10] } Output:
[6, 8, 10] Chaining toList with Other Functions
The toList function can be chained with other sequence functions to perform complex operations and collect the results into a list.
Example
fun main() { val words = sequenceOf("Kotlin", "is", "fun") val resultList = words.flatMap { it.asSequence() } .map { it.toUpperCase() } .toList() println(resultList) // Output: [K, O, T, L, I, N, I, S, F, U, N] } Output:
[K, O, T, L, I, N, I, S, F, U, N] Real-World Use Case
Processing and Collecting Data
In real-world applications, the toList function can be used to process and collect data from various sources into a list for further analysis or manipulation.
Example
data class Person(val name: String, val age: Int) fun main() { val people = sequenceOf( Person("Alice", 30), Person("Bob", 25), Person("Charlie", 35) ) val namesList = people.filter { it.age > 30 } .map { it.name } .toList() println(namesList) // Output: [Charlie] } Output:
[Charlie] Conclusion
The toList function in Kotlin provides used for converting sequences into lists. By understanding and using the toList function, you can efficiently collect the results of sequence operations into a list, enabling further manipulation and analysis of the data in your Kotlin applications.