Questão FC373317
Em uma aplicação desenvolvida com C# um Analista de Sistemas criou a classe Conta com os atributos NumeroConta e Saldo. Em outra classe, instanciou um conjunto de objetos da classe
Linguagens de Programação
FCC · 2018
Em uma aplicação desenvolvida com C# um Analista de Sistemas criou a classe Conta com os atributos NumeroConta e Saldo. Em outra classe, instanciou um conjunto de objetos da classe Conta e armazenou em um array chamado vcontas. Para percorrer esse array exibindo o saldo de cada conta, o Analista deverá utilizar o comando
- for(int i = 1; i < vcontas.lenght; i++) {MessageBox.Show("saldo = " + vcontas[i].Saldo);}
- foreach(Conta c in vcontas){MessageBox.Show("saldo = " + c.Saldo);}
- int i=0; do{MessageBox.Show("saldo = " + vcontas[i].Saldo);} while(i<=vcontas.Length);
- foreach(Conta c in vcontas){JOptionPane.ShowMessageBox("saldo = " + c.Saldo);}
- int i=0; while(i<=vcontas.lenght){MessageBox.Show("saldo = " + vcontas[i].Saldo); i++;}
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
A instrução foreach é a forma mais adequada para percorrer um array de objetos em C#. A sintaxe geral é foreach(T item in coleção), onde a variável temporária recebe, a cada iteração, o elemento atual.
No comando foreach(Conta c in vcontas){MessageBox.Show("saldo = " + c.Saldo);} temos: Conta como tipo dos elementos, c como referência à instância atual e vcontas como o array a ser enumerado. Dentro do bloco acessamos a propriedade Saldo de cada objeto e exibimos com MessageBox.Show.
Vantagens: não é necessário controlar índice ou incremento, o código fica mais legível e menos sujeito a erros. Observação: se houver posições nulas em vcontas, acessar c.Saldo lança NullReferenceException; nesse caso verifique se c != null antes de usar.
Conteúdo do catálogo FC Concursos · Atualizado em