2
respostas

Auto incremento

Olá, eu tenho dúvidas no projeto do bytebank, como posso fazer para o numero da conta ser auto incrementado automaticamente toda vez que uma nova conta for aberta? e como fazer a mesma coisa com o numero da agencia porém restringir o numero da agencia ao mesmo caso o cliente seja o mesmo?

Obrigado!

2 respostas

Ok! Já consegui resolver uma das perguntas, eu incrementei dentro do construtor, obrigado!


public class Account {
    private double saldo;
    private int agencia;
    private int numero;
    private Client titular;
    private static int total = 0;

    public Account() {
        Account.total++;
        this.agencia++;
        this.numero++;
        this.saldo = 100;

    }

Fala, Matheus! Tudo bem contigo?

Desculpe a demora de um retorno!

Bacana ter conseguido fazer o incremento, porém, para que possamos reconhecer se já temos um cliente cadastrado ou não, seria bacana simularmos um banco de dados.

Isso você verá mais a frente nos cursos da Formação Java no Java parte 6: Conhecendo o java.util e Java 8: Tire proveito dos novos recursos da linguagem onde trabalharemos com listas, guardar esses "clientes" dentro dessas listas e trabalharmos de diversas formas essas listas.

São cursos essenciais para fazermos sua ideia.

Vou mostrar um exemplo abaixo, mas vou pedir para não se apegar aos métodos e comandos.

Vamos supor que eu tenho uma Classe onde cadastro autores de livros e dentro dessa Classe possui seus atributos, construtores e demais requisitos. Só para exemplificar:

public class Autor {

    private String nome;
    private String email;

    public Autor(String nome,
                 String email) {
        setNome(nome);
        setEmail(email);
    }

Agora eu crio uma lista para guardar esses meus Autores

private static List<Autor> listaDeAutores = new ArrayList<>();

Assim que eu cadastro esses Autores, vou colocá-los dentro dessa lista, porém eu coloquei um "comparador" onde a cada Autor que eu cadastrar vai verificar se batem os emails. Se possuírem o mesmo e-mail, logo entende que se trata de um mesmo autor e não cadastra esse autor novamente.

    public void insereAutor(Autor autor) {
        if(AdminAutores.listaDeAutores.contains(autor)) {
            throw new RuntimeException("Já existe um AUTOR cadastrado em nosso sistema com esse EMAIL");
        }
        AdminAutores.listaDeAutores.add(autor);
    }

Matheus, esse foi um exemplo beeeemmm por cima, só para te dar uma ideia, mas tem toda uma estrutura por trás que faz com que essa lógica aconteça e te convido a seguir em frente na jornada para que você possa chegar nos cursos que recomendei com uma base sólida.

Guarde sua ideia, pois você usará muito!

Espero ter contribuído e um abraço!!!