Check if an Arraylist has an item with the same name

Asked

Viewed 20 times

-2

I need to check if an arraylist has such a name, and if that name already exists in the arraylist, do not let the user continue and register. I have the Products class:

public class Produto {


private String nome;
private double preco_unit;
private int unidade;
private int qnt_estoque;

public Produto(String nome, double preco_unit, int unidade, int qnt_estoque) {
    this.nome = nome;
    this.preco_unit = preco_unit;
    this.unidade = unidade;
    this.qnt_estoque = qnt_estoque;
}

public Produto() {
}

public String getNome() {
    return nome;
}

public double getPreco_unit() {
    return preco_unit;
}

public int getUnidade() {
    return unidade;
}

public int getQnt_estoque() {
    return qnt_estoque;
}

And in main:

public static ArrayList<Produto> produtos = new ArrayList<Produto>();
produtos.add(new Produto("Macaco", 200, 1, 2));
produtos.add(new Produto("Golfinho", 3, 2, 5));
produtos.add(new Produto("Leao", 300, 4, 7));
System.out.println("\n=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=");
System.out.println("Importação de Produtos");
System.out.print("NOME: ");
String nome = sc.nextLine();
for (Produto search: produtos) {
    while (search.getNome().contains(nome)) {
            System.out.println("\nPRODUTO JÁ CONSTA NO ESTOQUE.");
            System.out.println("");
            System.out.print("NOME: ");
            nome = sc.nextLine();
    }
}

It turns out that this code even works partially, but for some reason one hour it lets go and the user is free to register with the exact same name.

No answers

Browser other questions tagged

You are not signed in. Login or sign up in order to post.