How to create an array from a 2D array that only includes the non-zero elements in Kotlin

1 Answer

0 votes
fun main() {
    val array = arrayOf(
        arrayOf(1, 0, 8, 2),
        arrayOf(0, 7, 3, 0),
        arrayOf(9, 0, 0, 4)
    )

    val nonZeroList = mutableListOf<Int>()

    // Collect non-zero elements
    for (row in array) {
        for (element in row) {
            if (element != 0) {
                nonZeroList.add(element)
            }
        }
    }

    // Convert the list back to a one-dimensional array
    val resultArray = nonZeroList.toIntArray()

    resultArray.forEach { element ->
        print("$element ")
    }
}


   
/*
run:

1 8 2 7 3 9 4 
 
*/

 



answered Feb 13, 2025 by avibootz
...