Oi Renan, tudo bem?
O seu exemplo, de uma certa forma, não é possível, visto que o valor da primeira chave é do tipo string, enquanto os valores das outras chaves possuem tipos diferentes como inteiros, booleanos e decimais. Os valores precisam ser todos do mesmo tipo, enquanto as chaves também precisam ser do mesmo tipo (mas podem ser tipos diferentes dos valores). Ou seja, as chaves podem ser do tipo string, enquanto os valores do tipo inteiro. Mas os tipos dos valores não podem ser misturados. Faz sentido?
Na verdade, uma solução seria utilizar o tipo Any
para os valores, que significa "qualquer coisa". Ficaria dessa maneira:
var aluno: [String : Any] = ["nome": "Renan", "idade": 26, "estudante": true, "media": 7.5]
Mas é importante mencionar que não é recomendado o uso do tipo Any
, e sim um tipo concreto de dado.
Para seu exemplo acima, é indicado o uso de uma classe/struct. Você irá aprender isso no próximo curso. Abraços!