How to remove a subarray from an array in Kotlin

3 Answers

0 votes
fun removeSubarray(array: IntArray, startIndex: Int, endIndex: Int): IntArray {
    return array.filterIndexed { index, _ -> index < startIndex || index > endIndex }.toIntArray()
}

fun main() {
    val arr = intArrayOf(15, 6, 19, 8, 3, 7, 9, 1, 4)

    // Remove elements from index 2 to 6 (inclusive)
    val resultArray = removeSubarray(arr, 2, 6)

    // Print the result
    println(resultArray.joinToString(prefix = "[", separator = ", ", postfix = "]"))
}


 
  
/*
run:

[15, 6, 1, 4]

*/

 



answered Aug 13, 2025 by avibootz
0 votes
fun removeSubarray(array: IntArray, startIndex: Int, endIndex: Int): IntArray {
    return array.sliceArray(0 until startIndex) + array.sliceArray(endIndex + 1 until array.size)
}

fun main() {
    val arr = intArrayOf(15, 6, 19, 8, 3, 7, 9, 1, 4)

    // Remove elements from index 2 to 6 (inclusive)
    val resultArray = removeSubarray(arr, 2, 6)

    // Print the result
    println(resultArray.joinToString(prefix = "[", separator = ", ", postfix = "]"))
}


 
  
/*
run:

[15, 6, 1, 4]

*/

 



answered Aug 13, 2025 by avibootz
0 votes
fun removeSubarray(array: IntArray, startIndex: Int, endIndex: Int): IntArray {
    val list = array.toMutableList()
    
    list.subList(startIndex, endIndex + 1).clear()
    
    return list.toIntArray()
}

fun main() {
    val arr = intArrayOf(15, 6, 19, 8, 3, 7, 9, 1, 4)

    // Remove elements from index 2 to 6 (inclusive)
    val resultArray = removeSubarray(arr, 2, 6)

    // Print the result
    println(resultArray.joinToString(prefix = "[", separator = ", ", postfix = "]"))
}


 
  
/*
run:

[15, 6, 1, 4]

*/

 



answered Aug 13, 2025 by avibootz
...