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

.remove(0) não está funcionando

Bom dia a todos! Eu vim fazendo os testes, até mesmo para me dar um NullPointerException (ou um outro erro como IndexOutOfBoundsException), porém na hora de compilar ele está ignorando o lista.remove(0);.

Já rodei o Código duas vezes, salvando e alterando entre as duas referências, porém roda sem mostrar problema nenhum...

package br.com.bytebank.banco.teste.util;

import java.util.ArrayList;

import br.com.bytebank.banco.modelo.Conta;
import br.com.bytebank.banco.modelo.ContaCorrente;
import br.com.bytebank.banco.modelo.ContaPoupanca;

public class Teste {

    public static void main(String[] args) {
        ArrayList lista = new ArrayList();

        Conta cc1 = new ContaCorrente(512, 36663);
        lista.add(cc1);

        Conta cc2 = new ContaPoupanca(2323, 457881);
        lista.add(cc2);

        int tamanho = lista.size();
        System.out.println(tamanho);

        Conta ref = (Conta) lista.get(0);
        System.out.println(ref.getNumero());

        Conta ref1 = (Conta) lista.get(1);
        System.out.println(ref1.getNumero());

        lista.remove(0);

        System.out.println("Tamanho: " + tamanho);
        System.out.println(ref.getNumero());


    }

}

Conto com a suas ajuda!

2 respostas

Bom dia! Pra falar a verdade eu testei com outra referencia (tamanho2) para voltar a mostrar a quantidade dentro da array. Mas na hora de pedir a referência get.Numero() do elemento excluído, ele ao invés de retornar um erro, ele mostrou como se o elemento ainda estava dentro da Array. Isso pode acontecer?

solução!

Oi Tassiano,

O seu código está correto. Sobre o método remove da lista, o retorno é sempre o valor removido.

Abraço!