Ir ao conteúdo
  • Cadastre-se

Java O programa não encontra o produto a partir do código do cliente.


Posts recomendados

Olá pessoal, meu código a seguir não consegue executar  a opção 2 "MOSTRAR PRODUTO POR CÓDIGO" no método main. Ele não mostra o produto a partir do código do cliente. Porém, se eu criar a variável "codigoCliente" na classe Produto, e adicionar ela no ArrayList de repositorioPordutos, ele executa normalmente. Não faz sentido o Produto ter o "codigoCliente" isso tem que estar explicito na classe Cliente. Gostaria de saber porque ele não está executando na maneira que fiz abaixo. Grato se alguém puder ajudar!

 

 

CLASSE CLIENTE 

import java.util.ArrayList;
import java.util.List;

public class Cliente {
	private int nome;
	private int idade;
	private int codigoCliente;
	
	public List<Cliente> codigoClientes = new ArrayList<>();
	public int getNome() {
		return nome;
	}
	public void setNome(int nome) {
		this.nome = nome;
	}
	public int getIdade() {
		return idade;
	}
	public void setIdade(int idade) {
		this.idade = idade;
	}
	public int getCodigoCliente() {
		return codigoCliente;
	}
	public void setCodigoCliente(int codigoCliente) {
		this.codigoCliente = codigoCliente;
	}
	

}

CLASSE PRODUTO

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Produto {

	Scanner entrada = new Scanner(System.in);
	List<Produto> repositorioProduto = new ArrayList();
	Cliente cliente = new Cliente();
	private String nome;
	private double preco;

	public void compra() {
		Produto produtos = new Produto();
		Cliente cliente = new Cliente();
		
		System.out.println("NOME DO PRODUTO: ");
		produtos.nome = entrada.next();

		System.out.println("PREÇO: ");
		produtos.preco = entrada.nextDouble();
		

		System.out.println("CÓDIGO DO CLIENTE: ");
		cliente.setCodigoCliente(entrada.nextInt());
		
		repositorioProduto.add(produtos);
		cliente.codigoClientes.add(cliente);
	}
	
	public void mostrarPorCodigo() {
		int codigo;
		boolean achou = false;
		System.out.println("INFORME O CÓDIGO DO CLIENTE: ");
		codigo = entrada.nextInt();
			for (int i = 0; i < cliente.codigoClientes.size(); i++) {
				if (codigo == cliente.codigoClientes.get(i).getCodigoCliente()) {
					System.out.println("ESSE USUÁRIO COMPROU: "+ repositorioProduto.get(i).nome);
					achou = true;

				}
			}
			if(!achou) {
				System.out.println("---------------------");
				System.out.println("CÓDIGO NÃO ENCONTRADO");
				System.out.println("---------------------");
			}
		}
	}

CLASSE MAIN 

import java.util.Scanner;

public class Main {
	
	public static void main(String[] args) {
		Scanner entrada = new Scanner(System.in);
		Produto produto = new Produto();
		int opcao;
		int resp;
		do {
		System.out.println("1 - CADASTRAR");
		System.out.println("2 - MOSTRAR PRODUTO POR CÓDIGO");
		opcao = entrada.nextInt();
		
		switch(opcao) {
		case 1:
			produto.compra();
			break;
		case 2:
			produto.mostrarPorCodigo();
			break;
		}
		
		System.out.println("DIGITE [0] PARA CONTINUAR ");
		resp = entrada.nextInt();
		
		}while(resp == 0);
		
		
	}

}

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!