Modificando uma matriz de dicionários no Swift

Eu sou novo no Swift e tenho tido alguns problemas para descobrir alguns aspectos de matrizes e dicionários.

Eu tenho uma matriz de dicionários, para os quais usei Aliases de tipo, por exemplo

typealias myDicts = Dictionary<String, Double>

var myArray : [myDicts] = [
["id":0,
    "lat”:55.555555,
    "lng”:-55.555555,
    "distance":0],
["id":1,
    "lat": 44.444444,
    "lng”:-44.444444,
    "distance":0]
]

Desejo, então, percorrer os dicionários da matriz e alterar o valor da chave "distance". Eu fiz assim:

for dict:myDicts in myArray {

dict["distance"] = 5

}

Ou mesmo especificamente, certificando-se de que 5 é um duplo com muitas abordagens diferentes, incluindo por exemplo

for dict:myDicts in myArray {

let numberFive : Double = 5

dict["distance"] = numberFive

}

Todas as minhas tentativas causam um erro:

 @lvalue $T5' is not identical to '(String, Double)

Parece estar agindo como se os dicionários fossem imutáveis "let" em vez de "var". Então, eu tentei aleatoriamente isso:

for (var dict:myDicts) in myArray {

dict["distance"] = 5

}

Isso remove o erro e a chave é realmente atribuída 5 no loop for, mas isso não parece realmente modificar a própria matriz a longo prazo. O que estou fazendo errado?

questionAnswers(4)

yourAnswerToTheQuestion