1
resposta

Ajuda

Seguinte galera. eu fiz esse mini projeto aqui abaixo, mas eu tenho uma dúvida. Eu gostaria de pegar o valor do livro e usar ele como parâmetro através de algum método no objeto Cliente, para então retirar o valor do livro do saldo total do cliente. Mas para ter mais coerência, gostaria que fosse possível fazer isso através do "Cliente", não do "Livro"

Dados do LivroDados do ClienteMétodo pelo Cliente Método pelo Livro(Método completo feito por "Livro")

public boolean comprarLivro(String nomeDoLivro, double precoDoLivro) {
        precoDoLivro = this.getPreco();

if (this.cliente.getSaldo() <= precoDoLivro) {
    System.out.println("Saldo insuficiente. O valor de " + nomeDoLivro + " é" + precoDoLivro + " e seu saldo é de " + this.cliente.getSaldo());
    return false;
} else {
    System.out.println(this.cliente.getSaldo());
    this.cliente.setSaldo(- precoDoLivro);
    System.out.println(this.cliente.getSaldo());
    System.out.println("Livro " + nomeDoLivro + " comprado com sucesso.");
    return true;
}
1 resposta

Oioi Lucas! Tudo bem?

Para fazer isso, você pode passar um livro diretamente como parâmetro, mais ou menos assim:

public boolean comprarLivro(Livro livro) {


    if (this.cliente.getSaldo() <= livro.getPreco()) {
        System.out.println("Saldo insuficiente. O valor de " + livro.getNome() + " é" + livro.getPreco() + " e seu saldo é de " + this.cliente.getSaldo());
        return false;
    } else {
        System.out.println(this.cliente.getSaldo());
        this.cliente.setSaldo(-livro.getPreco());
        System.out.println(this.cliente.getSaldo());
        System.out.println("Livro " + livro.getNome() + " comprado com sucesso.");
        return true;
    }

}

Depois, no método main você pode instanciar tanto um livro quanto um cliente e chamar o método assim: cliente.comprarLivro(livro);.

Acredito que assim funcione bem! Muito legal sua ideia de deixar o projeto mais lógico e parecido com a realidade.

Espero ter ajudado, abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!