Eae pessoal to tentando fazer um programinha simples de banco, mas não sei pq diabos o meu método de depositar não está setando o saldo! A seguir vai minha classe Banco (MAIN) e a classe Conta
(LEMBRANDO QUE O NUMERO DA CONTA E A SENHA EU N PRECISO TRATAR NO MOMENTO)
public class Banco {
public static void main(String[] args) {
Scanner menu = new Scanner(System.in);
int n;
do {
System.out.println("===================================================");
System.out.println("Olá, seja bem vindo ao Sistema Bancário da Unipampa");
System.out.println("---------------------------------------------------");
System.out.println(" Digite 1 para criar uma conta. ");
System.out.println(" Digite 2 para sair ");
System.out.println("===================================================");
n = menu.nextInt();
if(n == 1){
int m;
do{
Conta conta = new Conta();
conta.abrirConta();
System.out.println("--------------------------------");
System.out.println("1 - Para ver Status");
System.out.println("2 - Verificar saldo");
System.out.println("3 - Depositar");
System.out.println("4 - Sacar");
System.out.println("5 - Encerrar conta");
System.out.println("6 - Desconectar do sistema...");
System.out.println("--------------------------------");
m = menu.nextInt();
if(m == 1){
System.out.println(conta.status());
}
else if(m == 2){
System.out.println(conta.verificarsaldo());
}
else if(m == 3){
System.out.println("Quanto você deseja depositar?");
double valordepositar = menu.nextDouble();
System.out.println(conta.depositar(valordepositar));
}
else if(m == 4){
System.out.println("Quanto você deseja sacar?");
double valorsacar = menu.nextDouble();
System.out.println(conta.sacar(valorsacar));
}
else if(m == 5){
System.out.println(conta.encerrarConta());
break;
}
else if(m == 6){
System.out.println("Desconectando...");
break;
}
}while(true);
}
else if (n == 2){
System.out.println("Desconectando...");
break;
}
}while(true);
}
}
E a classe Conta…
public class Conta {
private long nroConta;
private String senha;
private double saldo;
private boolean status;
public Conta() {
this.nroConta = 0;
this.senha = "";
this.saldo = 0;
this.status = false;
}
private long getNroConta() {
return nroConta;
}
private void setNroConta(long nroConta) {
this.nroConta = nroConta;
}
private String getSenha() {
return senha;
}
private void setSenha(String senha) {
this.senha = senha;
}
private double getSaldo() {
return saldo;
}
private void setSaldo(double saldo) {
this.saldo = saldo;
}
private boolean isStatus() {
return status;
}
private void setStatus(boolean status) {
this.status = status;
}
public String abrirConta() {
if (this.status == false) {
this.status = true;
String msg = "Conta criada com Sucesso!";
return msg;
} else {
String msg = "Conta já ativa.";
return msg;
}
}
public String encerrarConta() {
if (this.status == true && this.saldo == 0) {
this.status = false;
String msg = "Conta encerrada com Sucesso!";
return msg;
} else {
String msg = "Conta inexistente ou com saldo positivo/devedor";
return msg;
}
}
public String depositar(double deposito) {
if (this.status = true)
{
this.saldo += deposito;
String msg = "Deposito efetuado com sucesso!";
return msg;
}else {
String msg = "Conta inexistente!";
return msg;
}
}
public boolean validarSenha(String senha) {
if (senha.matches("^[0-9]*$") && senha.length() == 6) {
this.setSenha(senha);
return true;
} else {
return false;
}
}
public double verificarsaldo() {
return this.getSaldo();
}
public String sacar(double saque) {
if (this.status = true)
{
if(this.saldo >= saque){
this.saldo = this.saldo - saque;
String msg = "Saque efetuado com sucesso!";
return msg;
}
else{
String msg = "Saldo insuficiente!";
return msg;
}
}else {
String msg = "Conta inexistente!";
return msg;
}
}
public String status() {
if (this.status == true) {
String msg = "Numero da conta: " + this.nroConta + "\nStatus da conta: " + this.status + "\nSaldo da conta: " + this.saldo;
return msg;
} else {
String msg = "Conta não encontrada!";
return msg;
}
}
}