Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Solução sem o método VerificarCapacidade()

Boa Noite!

No código abaixo, ao invés de eu criar um método VerificarCapacidade(), conforme a Aula, decidi fazer a ver a verificação da quantidade de Array direto no método AdicionarConta(). Coloquei um if, que compara a próxima posição com o tamanho do array, se a próxima posição for maior, vai para o else onde é feita a rotina para aumentar a quantidade. Minha duvida é, existe alguma "má pratica" nessa solução que optei?

public class ListaContaCorrente
    {

        private ContaCorrente[] _contas;
        private int _proximaPosicao;

        public ListaContaCorrente()
        {
            _contas = new ContaCorrente[5];
            _proximaPosicao = 0;
        }

        public void AdicionarConta(ContaCorrente contasCorrente)
        {
            if(_proximaPosicao < _contas.Length)
            {
                Console.WriteLine($"Adicionando conta na posição {_proximaPosicao}");

                _contas[_proximaPosicao] = contasCorrente;
                _proximaPosicao++;
            }
            else
            {
                Console.WriteLine(" Adicionando mais arrays");
                int novoTamanho = _contas.Length * 2;
                ContaCorrente[] novoArray = new ContaCorrente[novoTamanho];

                for(int i = 0; i < _contas.Length; i++)
                {
                    novoArray[i] = _contas[i];
                    Console.WriteLine(".");
                }

                _contas = novoArray;
            }

        }
2 respostas
solução!

Olá Jefferson, tudo certo?

Neste sentido acredito que não. Tanto que para saber se seu algoritmo foi melhor, pior ou igual ao do Guilherme, é só testando com uma grande quantidade de dados. Mas não se apegue a este tipo de detalhes, porque amanhã você programará sempre melhor que hoje.

É muito bom você tentar aplicar seus próprios algoritmos, isso ajuda a fixar o conteúdo.

Bons estudos!

Obrigado pelo retorno Fabiano! Abraço!