Olá!
Estou fazendo um pequeno Estoque para um trabalho da faculdade.
Na Classe Estoque, eu gostaria de implementar um método para adicionar um Item caso o nome dele seja diferente dos itens que já tenho em um Array e adicionar uma Quantidade a esse Item caso ele já exista no meu Array.
Consegui uma forma de verificar se existe o nome do novo Item digitado através do Código abaixo:
for(int i = 0; i<6; i++){
if(opcao.equals(produtos[n+1].nome.trim())){
System.out.print("\nProduto ja existente.\nAdicionar quantidade: ");
opcaoQtde = scanner.nextInt();
break;
}
n++;
} // forma que encontrei para verificar se o nome digitado já existe no array.
Porém, não consegui pensar em uma forma de implementar uma nova quantidade a um item existente no array qtde.
Segue o código completo da classe Estoque:
Produto[] produtos;
Scanner scanner = new Scanner(System.in);
int[] qtde = new int[]{1, 5, 1, 3, 5, 2, 2};
public void exibir(){
produtos = new Produto[10];
produtos[0] = new Produto();
produtos[0].nome = "Fazoya ";
produtos[1] = new Produto();
produtos[1].nome = "Xarid ";
produtos[2] = new Produto();
produtos[2].nome = "Sunya ";
System.out.printf("%n %n %24s %n","ESTOQUE");
System.out.printf("%n %15s %20s %n %n","Produtos", "Quantidade");
System.out.printf("%s %16d %n", produtos[0].nome,qtde[0]);
System.out.printf("%s %16d %n", produtos[1].nome,qtde[1]);
System.out.printf("%s %16d %n", produtos[2].nome,qtde[2]);
String opcao;
System.out.printf("\n\nDeseja adicionar um novo produto? [s/n]\n");
do{
opcao = scanner.nextLine().toLowerCase();
switch(opcao){
case"s":
addItem();
opcao = "s";
break;
case"n":
System.out.println("Encerrando");
opcao = "n";
break;
default:
System.out.println("Opcao invalida, digitar somente [s/n]");
break;
}
}while(opcao != "s" && opcao != "n");
}
public void addItem(){
String opcao;
int opcaoQtde;
int n = -1;
System.out.print("Novo Item: ");
opcao = scanner.nextLine();
for(int i = 0; i<6; i++){
if(opcao.equals(produtos[n+1].nome.trim())){
System.out.print("\nProduto ja existente.\nAdicionar quantidade: ");
opcaoQtde = scanner.nextInt();
break;
}
n++;
}
}
}
Resumindo, a dúvida é, como posso acrescentar quantidade a um item já existente.