Kotlin List – Remove Element at Index

We can modify the contents of a List only if the list is mutable.

To remove an element from a Mutable List at given index in Kotlin, call removeAt() function on this list object and pass the index of the element, that we would like to remove, as argument.

The syntax of removeAt() function is

MutableList.removeAt(index)

Examples

In the following program, we will create a mutable list with some elements in it. We shall then remove the element at index 3 from this list using removeAt() function.

Main.kt

fun main(args: Array<String>) {
    val mutableList: MutableList<Int> = mutableListOf(1, 4, 9, 16, 25)
    println("List before removing : " + mutableList)
    mutableList.removeAt(3)
    println("List after  removing : " + mutableList)
}

Output

List before removing : [1, 4, 9, 16, 25]
List after  removing : [1, 4, 9, 25]

If the specified index is out of bounds for this list object, then removeAt() throws java.lang.IndexOutOfBoundsException.

In the following program, we will try to remove the element at index 7, while the size of this list is 5.

Main.kt

fun main(args: Array<String>) {
    val mutableList: MutableList<Int> = mutableListOf(1, 4, 9, 16, 25)
    println("List before removing : " + mutableList)
    mutableList.removeAt(7)
    println("List after  removing : " + mutableList)
}

Output

List before removing : [1, 4, 9, 16, 25]
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index 7 out of bounds for length 5
	at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
	at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
	at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
	at java.base/java.util.Objects.checkIndex(Objects.java:372)
	at java.base/java.util.ArrayList.remove(ArrayList.java:536)
	at MainKt.main(Main.kt:4)
ADVERTISEMENT

Conclusion

In this Kotlin Tutorial, we learned how to remove an element at specific index from a mutable list in Kotlin, using removeAt() function, with the help of example programs.