Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Valor não esta dando 0 está dando -50

Essa é a programação e não vejo nada de errado nela. alguém pode me ajudar?

public class TestaValores { public static void main(String[] args) { Conta conta = new Conta();

    //conta está inconsistente 
    conta.setAgencia(-50);
    conta.setNumero(-330);

    System.out.println(conta.getAgencia());
}

========================================================= public class Conta { private double saldo; private int agencia = 42; private int numero; private Cliente titular;

 public Conta (){
     System.out.println("estamos criando uma conta");
 }

    public void deposita(double valor) { 
        this.saldo += valor;
    } 

    public boolean saca(double valor) { 
        if(this.saldo >= valor) { 
            this.saldo -= valor; 
            return true;
        } else {
            return false;
        }
    }
    public boolean transfere(double valor, Conta destino) {
        if(this.saldo >= valor) {
            this.saldo -= valor;
            destino.deposita(valor);
            return true;
        }
            return false;
    }

    public double getSaldo() {
        return this.saldo;

    }
    public int getNumero() { 
        return this.numero;
    }

    public void setNumero(int numero) { 
        this.numero = numero;
    }    

    public int getAgencia() {
         if (agencia <= 0) { 
             System.out.println("nao pode valor menor igual a 0");
             return agencia;
         }
        return this.agencia;
    }

    public void setAgencia(int agencia) {
        this.agencia = agencia;
    }

    public void setTitular(Cliente titular) {
        this.titular = titular;

    }

    public Cliente getTitular() {
        return titular;
    }
}
1 resposta
solução!

Boa noite Viviane!

Está retornando -50 por causa do return do método getAgencia

 public int getAgencia() {
         if (agencia <= 0) { 
             System.out.println("nao pode valor menor igual a 0");
             return agencia; // retornando o valor da agencia que foi passado no setAgencia
         }
        return this.agencia;
    }

Para retornar 0 altere a parte do seu if para esse código

if (agencia <= 0) { 
             System.out.println("nao pode valor menor igual a 0");
             return 0; 
         }

Espero ter ajudado, abraço!