Contador: Número de contas

Boa tarde , estou começando em prgramação e Java , estou criando uma classe com vários métodos , um deles é o de abrir conta, o que preciso é que cada vez que alguém criar uma conta corrente “cc” seja adicionado +1 pra que a próxima pessoa fique com a conta 2 , sendo assim não havendo repetição de conta (segue)

identar texto pre-formatado em 4 espaços

public class ClasseBanco {
public int numConta;
protected String tipo;
private String dono;
private float saldo;
private boolean status;
Scanner leitor = new Scanner(System.in);
int contaCc;
int contaCp;

public void totalContaCC() {
    contaCc=contaCc++;
     this.setContaCc(contaCc++);
    this.setNumConta(contaCc);
}

public void abrirConta() {
    System.out.println("Qual seu nome ?");
    this.dono = leitor.nextLine();
    System.out.println("Qual o tipo da sua conta ? [cc/cp] ");
    this.tipo = leitor.nextLine();
    this.status = true;
    
    if (tipo.equalsIgnoreCase("cc")) {
        this.saldo=50f;
        totalContaCC();
        
        
    }else if (tipo.equalsIgnoreCase("cp")) {
        this.saldo=150f;
    }else {
        System.out.println("Tipo inválido , favor informar se é cc ou cp");
    }
}

Não dá pra compilar o código postado.

Edite sua mensagem colocando o código completo e formatando com o botão de Texto pré formatado, identificado pelo símbolo </>.

Editado , desculpe sou novo aqui :slight_smile:

public void totalContaCC() {
    contaCc = contaCc++; // aqui você está dizendo que o atributo contaCc recebe o valor dele mesmo e em seguida você incrementa o mesmo
    this.setContaCc(contaCc++); // não existe o método setContaCc mas você está passando o valor atual do atributo contaCc e após a execução do método, o atributo vai ser incrementado 
    this.setNumConta(contaCc); // esse método também não existe
}

Oi Douglas,

Para fazer isso, você pode ter um atributo static, que controlará a numeração das contas. Primeiro você inicializa com um número inicial e a cada nova conta criada, o número da conta recebe o valor desse atributo e depois você o incrementa.

O atributo seria algo do tipo:
private static int controleNumeroConta = 1000;
E dentro do método abrirConta, você faria:
numConta = controleNumeroConta++;

Dessa forma, a cada nova conta (cada vez que o método abrirConta for chamado) o número da conta vai sendo incrementado.
Espero ter ajudado.

1 curtida

Olá Denise , funcionou , ainda não tinha visto sobre o static rs quis dar um passo maior que a perna , agradeço o apoio!

1 curtida