1
resposta

[Dúvida] A linha bandasRegistradas[nomeDaBanda].Add(nota);

Professor, fiquei com uma dúvida sobre o funcionamento deste trecho de código:

bandasRegistradas[nomeDaBanda].Add(nota);

Como o programa entende que o método Add() deve adicionar apenas o valor da nota, e não também o nome da banda?
Eu imaginei que seria necessário algo como bandasRegistradas[nomeDaBanda].Add(nomeDaBanda, nota);.
Poderia explicar melhor por que não precisamos passar o nome da banda como parâmetro no Add()?

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Olá Luiz! Como vai?

No trecho de código bandasRegistradas[nomeDaBanda].Add(nota);, você está lidando com um dicionário em C#. Vamos dar uma olhada em como isso funciona:

  1. Dicionário: bandasRegistradas é um dicionário onde a chave é o nomeDaBanda e o valor associado a essa chave é uma lista de notas. Ou seja, cada banda tem uma lista de notas associadas a ela.

  2. Acesso pelo Nome da Banda: Quando você usa bandasRegistradas[nomeDaBanda], está acessando a lista de notas que pertence à banda cujo nome é nomeDaBanda.

  3. Método Add(): O método Add() é um método da lista (não do dicionário). Assim, quando você chama bandasRegistradas[nomeDaBanda].Add(nota);, você está dizendo "adicione esta nota à lista de notas da banda especificada". Não é necessário passar o nome da banda novamente, porque você já está acessando diretamente a lista de notas daquela banda específica.

Para ilustrar, imagine que bandasRegistradas é como um armário com várias gavetas (cada gaveta é uma banda). Quando você abre uma gaveta (usando nomeDaBanda), você encontra uma lista de notas dentro dela. O método Add(nota) simplesmente coloca uma nova nota dentro dessa gaveta específica.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.