Copiei os mesmos códigos da aula, achando que possivelmente tivesse digitado algo errado, mas segue o mesmo erro.
Alguém consegue me dar uma luz?

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!
Copiei os mesmos códigos da aula, achando que possivelmente tivesse digitado algo errado, mas segue o mesmo erro.
Alguém consegue me dar uma luz?

Boa tarde Felipe, tudo bom?
De acordo com sua imagem o problema está no método ExibeLista, não está sendo criada a instâncias de algum objeto, você pode postar o código da sua classe ListaDeContasCorrentes?
No aguardo.
Segue o código professor:
public class ListaDeContasCorrentes
{
private ContaCorrente[] _itens = null;
private int _proximaPosicao = 0;
public ListaDeContasCorrentes(int tamanhoInicial = 5)
{
_itens = new ContaCorrente[tamanhoInicial];
}
public void Adicionar(ContaCorrente item)
{
Console.WriteLine($"Adicionando item na posicao {_proximaPosicao}");
VerificarCapacidade(_proximaPosicao + 1);
_itens[_proximaPosicao] = item;
_proximaPosicao++;
}
private void VerificarCapacidade(int tamanhoNecessario)
{
if (_itens.Length >= tamanhoNecessario)
{
return;
}
Console.WriteLine("Aumentando a capacidade da lista");
ContaCorrente[] novoArray = new ContaCorrente[tamanhoNecessario];
for (int i = 0; i < _itens.Length; i++)
{
novoArray[i] = _itens[i];
}
_itens = novoArray;
}
public void VerificaMaiorSaldo()
{
double maiorSaldo = 0.0;
for (int i = 0; i < _itens.Length; i++)
{
if (!(maiorSaldo > _itens[i].Saldo))
{
maiorSaldo = _itens[i].Saldo;
}
}
Console.WriteLine($"O maior saldo entre as contas é de: {maiorSaldo}");
}
public void Remover(ContaCorrente conta)
{
int indiceItem = -1;
for (int i = 0; i < _proximaPosicao; i++)
{
ContaCorrente contaAtual = _itens[i];
if (contaAtual == conta)
{
indiceItem = i;
break;
}
}
// 0 1 2
//[conta1][conta2][conta4][conta5][null]
for (int i = indiceItem; i < _proximaPosicao - 1; i++)
{
_itens[i] = _itens[i + 1];
}
_proximaPosicao--;
_itens[_proximaPosicao] = null;
}
public void ExibeLista()
{
for (int i = 0; i < _itens.Length; i++)
{
ContaCorrente conta = _itens[i];
Console.WriteLine($" Indice[{i}] = Conta:{conta.Conta} - N° da Agência: {conta.Numero_agencia}");
}
}
public ContaCorrente RecuperarContaNoIndice(int indice)
{
if (indice < 0 || indice >= _proximaPosicao)
{
throw new ArgumentOutOfRangeException(nameof(indice));
}
return _itens[indice];
}
public int Tamanho
{
get
{
return _proximaPosicao;
}
}
public ContaCorrente this[int indice]
{
get
{
RecuperarContaNoIndice(indice);
}
}
}
}
Felipe,
Não consegui simular o erro com o código que vc postou, para mim está tudo Ok. Você tem esse projeto no git? Se sim, posta o link para eu poder baixar aqui.
Att.
Desculpe a demora professor, tive que aprender a usar o git kkkk segue o link: https://github.com/felipekal/alura-csharp-listaDeContasCorrentes
Bom dia Felipe, tudo bom?
Mestre baixei seu projeto e compilando, acusou que estava faltando um return:
No program.cs eu comentei e deixei somente o método e a chamada para TestaArrayDeContasCorrents() e rodou belezinha!
Obrigado professor !