Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

tipos diferente no valor do dicionário

Olá, tenho uma duvida.

Como eu coloco a tipagem de um dicionário com o tipo dos valores diferente?

por exemplo:

var aluno = ["nome": "Renan", "idade": 26, "estudante": true, "media": 7.5]

teria que usar o typealias?

Ou o recomendado seria usar um dicionario com o valores do mesmo tipo?

1 resposta
solução!

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!