Uso de ArrayList

Não esta salvando os dados

Classe Equipe

import java.util.ArrayList;

// Classe chamada Equipe

public class Equipe {

protected String Condutor_do_carro_de_corrida;
protected String Carro_de_corrida;


// Declarando e instanciando um piloto

ArrayList <String> piloto = new ArrayList <String>();



// Construtor padrão da classe Equipe

public Equipe(){


}


// Construtor da classe Equipe

public Equipe(String Condutor_do_carro_de_corrida, String Carro_de_corrida){

    this.Condutor_do_carro_de_corrida=Condutor_do_carro_de_corrida;
    this.Carro_de_corrida=Carro_de_corrida;

}




/**
 * @return the Condutor_do_carro_de_corrida
 */
public String getCondutor_do_carro_de_corrida() {
    return Condutor_do_carro_de_corrida;
}

/**
 * @param Condutor_do_carro_de_corrida the Condutor_do_carro_de_corrida to set
 */
public void setCondutor_do_carro_de_corrida(String Condutor_do_carro_de_corrida) {
    this.Condutor_do_carro_de_corrida = Condutor_do_carro_de_corrida;
}

/**
 * @return the Carro_de_corrida
 */
public String getCarro_de_corrida() {
    return Carro_de_corrida;
}

/**
 * @param Carro_de_corrida the Carro_de_corrida to set
 */
public void setCarro_de_corrida(String Carro_de_corrida) {
    this.Carro_de_corrida = Carro_de_corrida;
}





    

        
// Método para adicionar um piloto a Equipe.

public String Adicionar_piloto(String Condutor_do_carro_de_corrida){


    piloto.add(Condutor_do_carro_de_corrida);

return Condutor_do_carro_de_corrida;

}



// Método para remove um piloto da Equipe.

public String Remover_piloto(String Condutor_do_carro_de_corrida){


    piloto.remove(Condutor_do_carro_de_corrida);

return Condutor_do_carro_de_corrida;

}


// Método para listar todos os pilotos da Equipe.

public void listar_piloto(){


    for(String todos : piloto){
    
    System.out.println(todos);
    
    }


    
}

// public String ToString(){
//
//
//
// return ;
// }

}

=============================================================================

Casse principal

        case 6:

        // Adiciona um piloto na Equipe
            
            
        Equipe eq = new Equipe();
        
        char opcao0;

do {

        System.out.println("Informe o nome do piloto da Equipe:");
        piloto=entrada.next();
        
        eq.Adicionar_piloto(piloto);
        
        
        System.out.print("\nDeseja adicionar outro piloto na Equipe (S / N)? : \n\n");
         opcao0 = entrada.next().charAt(0);

        } while (opcao0 == 's' || opcao0 == 'S');
        

        System.out.println("\n\nPilotos na Equipe atualmente: \n");
        eq.listar_piloto();


        break;

        


        case 7:
        
        // Remover um piloto da Equipe
            
        Equipe equ = new Equipe();
        
        char opcao1;

do {

        System.out.println("\n\nPilotos na Equipe atualmente: \n");
        equ.listar_piloto(); 
        
        System.out.println("Informe o nome do piloto a ser removido da Equipe:");
        piloto=entrada.next();
        
        equ.Remover_piloto(piloto);
        
        System.out.print("\nDeseja remover outro piloto na Equipe (S / N)? : \n\n");
         opcao1 = entrada.next().charAt(0);

        } while (opcao1 == 's' || opcao1 == 'S');

        
        
        System.out.println("\n\nPilotos da Equipe: \n");
        equ.listar_piloto();  


        break;



        case 8:
         
         System.out.println("\n\nPilotos na Equipe atualmente: \n");
         
         Equipe equi = new Equipe();   
         equi.listar_piloto();
         


        break;

Em adicionar até aparece quando lista dentro do case.

O problema é depois não aparece para remover e nem lista novamente.

O problema é que em casa case você cria uma nova equipe, deveria estar sempre manipulando a mesma e não criando outra.