Métodos para Depositar e Sacar valor usando ArrayList

Olá,

Estou comum projeto java que ja esta criando a conta, consulta e exclui,
mas da erro quando escolhe opção de DEPOSITAR E SACAR. Abaixo parte da classe Conta e
o código do JButton de deposito e sacar.
Obs: Como faço pra atualizar o ArrayList e retornar esse valores atualizados apos depositar e sacar?

public int depositar(double valor){
if(valor >0){
saldo += valor;
return 1;
}
else
return 0;
}
public int sacar(double valor){
if(valor > 0 && valor <= saldo){
saldo -= valor;
return 1;
}else
return 0;
}

}
JButton pra realizar o deposito:

private void btConfirmaDepositoActionPerformed(java.awt.event.ActionEvent evt) {
if(tfNConta.getText().isEmpty() || tfValorDeposito.getText().isEmpty()){
JOptionPane.showMessageDialog(this, “Um ou mais campo está vazio!”);
}else{
double valor;
int numero;
valor = Double.parseDouble(tfValorDeposito.getText());
numero = Integer.parseInt(tfNConta.getText());

      Conta c;
      c = buscaConta(numero);
      
      if(c!=null){
        if(c.depositar(valor) == 1){
              JOptionPane.showMessageDialog(this, "Depósito realizado!");                  
        }else
          JOptionPane.showMessageDialog(this, "Depósito NÃO realizado!");
        }else{
          JOptionPane.showMessageDialog(this, "Essa conta não existe");
        }   
    }
}                                                  

private Conta buscaConta(int numero) {
    throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}

}

JButton pra realizar o saque:

private void btConfirmaSaqueActionPerformed(java.awt.event.ActionEvent evt) {
if(tfNumeroC.getText().isEmpty() || tfValorSacar.getText().isEmpty()){
JOptionPane.showMessageDialog(this, “Um ou mais campo está vazio!”);
}else{
double valor;
int numero;
valor = Double.parseDouble(tfValorSacar.getText());
numero = Integer.parseInt(tfNumeroC.getText());
int n = 0;
Conta c = null;

     for(Conta consultar: cadastro){
         if(Integer.parseInt(tfNumeroC.getText())== consultar.getNumero() && c.depositar(n) == 1)
             consultar.depositar(valor);
         else
            JOptionPane.showMessageDialog(this, "Saldo indisponível");
             
    }
 }

Você pode fazer um método na sua classe Conta que busque no seu ArrayList se o número da conta passada como parâmetro é de uma conta existente, se essa conta existir o método devolve essa conta e você faz as alterações de depositar e sacar nessa conta que foi retornada.

Esta bem, vou tentar.
Tankyou.