How to clone a two-dimensional array in Kotlin

3 Answers

0 votes
fun main() {
    val arr2D = arrayOf(
	    arrayOf(1, 2, 3, 0),
    	arrayOf(4, 5, 6, 98),
    	arrayOf(7, 8, 9, 176)
	)

	val clonedArray = arr2D.map { it.clone() }.toTypedArray()
    
    for (row in clonedArray) {
        for (n in row) {
            print("$n ")
        }
        println()
    }
}

  
     
/*
run:
  
1 2 3 0 
4 5 6 98 
7 8 9 176 
 
*/

 



answered Mar 8, 2025 by avibootz
0 votes
fun main() {
    val arr2D = arrayOf(
	    arrayOf(1, 2, 3, 0),
    	arrayOf(4, 5, 6, 98),
    	arrayOf(7, 8, 9, 176)
	)

	val clonedArray = Array(arr2D.size) { i ->
    		Array(arr2D[i].size) { j ->
                arr2D[i][j]
            }
    }
    
    for (row in clonedArray) {
        for (n in row) {
            print("$n ")
        }
        println()
    }
}

  
     
/*
run:
  
1 2 3 0 
4 5 6 98 
7 8 9 176 
 
*/

 



answered Mar 8, 2025 by avibootz
0 votes
fun main() {
    val arr2D = arrayOf(
	    arrayOf(1, 2, 3, 0),
    	arrayOf(4, 5, 6, 98),
    	arrayOf(7, 8, 9, 176)
	)

	val clonedArray = Array(arr2D.size) { i ->
            arr2D[i].copyOf()
        }
    
    for (row in clonedArray) {
        for (n in row) {
            print("$n ")
        }
        println()
    }
}

  
     
/*
run:
  
1 2 3 0 
4 5 6 98 
7 8 9 176 
 
*/

 



answered Mar 8, 2025 by avibootz

Related questions

3 answers 199 views
2 answers 171 views
1 answer 84 views
1 answer 84 views
1 answer 94 views
...