Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Dúvida] Sobre dicionário e a KEY sempre chamar a variavel que é a chave do dicionário ?

Minha dúvida é um item de um dicionário pode ter mais de uma chave associada ao mesmo valor ou cada valor precisa obrigatoriamente de uma única chave? por exemplo seria possível acessar a mesma banda tanto por "Iron Maiden" quanto por "IM" dentro do mesmo dicionário? Ou, para isso, seria necessário criar outra estrutura ou outra entrada no dicionário?

1 resposta

Olá, Lucas, como vai?

Sim, é possível ter mais de uma chave associada ao mesmo valor, mas o dicionário em si não permite que duas chaves sejam equivalentes. Cada chave precisa ser única dentro do Dictionary. O que pode acontecer é termos duas chaves diferentes apontando para o mesmo objeto ou valor. No seu exemplo, poderíamos ter "Iron Maiden" e "IM" como duas chaves distintas, mas ambas poderiam armazenar a mesma lista de notas.

Por exemplo, considerando um dicionário de bandas e suas avaliações, poderíamos ter algo como bandasRegistradas["Iron Maiden"] e bandasRegistradas["IM"], desde que as duas entradas tenham sido criadas. Porém, existe uma questão importante: se forem duas entradas independentes, alterar a lista de uma não necessariamente altera a outra. Para representar realmente dois nomes diferentes para a mesma banda, seria mais interessante ter uma estrutura que permita relacionar os apelidos à mesma informação, ou então usar um segundo dicionário de aliases que converta "IM" para "Iron Maiden" antes de acessar o dicionário principal.

Então, quando você pensa em "Iron Maiden" e "IM", você imagina que os dois nomes deveriam sempre acessar exatamente as mesmas avaliações da banda, ou seriam registros diferentes que apenas possuem o mesmo conteúdo? Essa diferença ajuda bastante a decidir qual estrutura faz mais sentido.

Continue explorando essas possibilidades, Lucas. Esse tipo de dúvida é importante porque começa a mostrar como escolher estruturas de dados de acordo com o problema que queremos representar. Qualquer outra dúvida, o fórum está à disposição.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!