CARTÃO DE CRÉDITO
package br.com.meuprojeto.modelos;
import java.util.ArrayList;
import java.util.List;
public class CartaoDeCredito {
private double limite;
private double saldo;
private List<Compra> compras;
public CartaoDeCredito(double limite) {
this.limite = limite;
this.saldo = limite;
this.compras = new ArrayList<>();
}
public boolean lancaCompra(Compra compra) {
if (this.saldo >= compra.getValor()) {
this.saldo -= compra.getValor();
this.compras.add(compra);
return true;
}
return false;
}
public double getSaldo() {
return saldo;
}
public List<Compra> getCompras() {
return compras;
}
}
COMPRAS
package br.com.meuprojeto.modelos;
public class Compra implements Comparable<Compra> {
private String descricao;
private double valor;
public Compra(String descricao, double valor) {
this.descricao =descricao;
this.valor = valor;
}
public String getDescricao() {
return descricao;
}
public double getValor() {
return valor;
}
@Override
public String toString() {
return descricao + " - " + valor;
}
@Override
public int compareTo(Compra outraCompra) {
return Double.compare(this.valor, outraCompra.getValor());
}
}
RESULTADO
Digite o limite do cartão: 100000000
Digite a descrição da compra: VESTIDO
Digite o valor da compra: 80000
Compra realizada!
Digite 0 para sair ou 1 para continuar
1
Digite a descrição da compra: SALTO
Digite o valor da compra: 2000
Compra realizada!
Digite 0 para sair ou 1 para continuar
1
Digite a descrição da compra: BOLSA
Digite o valor da compra: 120000
Compra realizada!
Digite 0 para sair ou 1 para continuar
0
COMPRAS REALIZADAS:
SALTO - 2000.0
VESTIDO - 80000.0
BOLSA - 120000.0
Saldo do cartão: 9.9798E7
Process finished with exit code 0