Multidimensional arrays in Swift
arrays, swift
Solution
For future readers, here is an elegant solution(5x5):
`var matrix = [[Int]](repeating: [Int](repeating: 0, count: 5), count: 5)`
and a dynamic approach:
var matrix = [[Int]]() // creates an empty matrix
var row = [Int]() // fill this row
matrix.append(row) // add this row
Problem
Edit: As Adam Washington points out, as from Beta 6, this code works as is, so the question is no longer relevant. I am trying to create and iterate through a two dimensional array: ``` var array = Array(count:NumColumns, repeatedValue:Array(count:NumRows, repeatedValue:Double())) array[0][0] = 1 array[1][0] = 2 array[2][0] = 3 array[0][1] = 4 array[1][1] = 5 array[2][1] = 6 array[0][2] = 7 array[1][2] = 8 array[2][2] = 9 for column in 0...2 { for row in 0...2 { println("column: \(column) row: \(row) value:\(array[column][row])") } } ``` However, this is the output I get: ``` column: 0 row: 0 value:3.0 column: 0 row: 1 value:6.0 column: 0 row: 2 value:9.0 column: 1 row: 0 value:3.0 column: 1 row: 1 value:6.0 column: 1 row: 2 value:9.0 column: 2 row: 0 value:3.0 column: 2 row: 1 value:6.0 column: 2 row: 2 value:9.0 ``` It looks as if the last column in the row is overwriting the other column values. Am I declaring it wrong? Edit: Perhaps a picture from the Playground would help: