JavaATM的实例

首先定义一个接口
public interface Atm {
BankCard login(String card,String pwd);
void queryMany();
void wMany();
void deposit();
void transfer();
void printcz();
void exitAtm();
void queryallcard();
List showall();
}
在定义一个银行卡的类
public class BankCard {
String Card;
String name;
String pwd;
String bankName;
int overmany;
public BankCard(String card, String name, String pwd, String bankName, int overmany) {
Card = card;
this.name = name;
this.pwd = pwd;
this.bankName = bankName;
this.overmany = overmany;
}
public void setCard(String card) {
Card = card;
}
public void setName(String name) {
this.name = name;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public void setBankName(String bankName) {
this.bankName = bankName;
}
public void setOvermany(int overmany) {
this.overmany = overmany;
}
public String getCard() {
return Card;
}
public String getName() {
return name;
}
public String getPwd() {
return pwd;
}
public String getBankName() {
return bankName;
}
public int getOvermany() {
return overmany;
}
@Override
public String toString() {
return
“Card=’” + Card + ‘’’ +
“, name=’” + name + ‘’’ +
“, pwd=’” + pwd + ‘’’ +
“, bankName=’” + bankName + ‘’’ +
“, overmany=” + overmany;
}
然后实现ATM接口
public class TtmImpl implements Atm{
@Override
public List showall() {
Scanner input=new Scanner(System.in);
System.out.println("----------请选择菜单序号-------------");
System.out.println("-----1.查询余额 2.取款----");
System.out.println("-----3.存款 4.转账----");
System.out.println("-----5.打印 6.退卡----");
System.out.println("----------7.转账信息查询-------------");
System.out.println("----------------------------------");
int s=input.nextInt();
switch (s){
case 1:
queryMany();
break;
case 2:
deposit();
break;
case 3:
wMany();
break;
case 4:
transfer();
break;
case 5:
printcz();
break;
case 6:
exitAtm();
break;
case 7:
queryallcard();
break;
default:
System.out.println(“输入错误”);
break;
}
for (int i = 0; i <bankCards.size() ; i++) {
if (bankCards.get(i).getCard().equals(b.getCard())){
bankCards.set(i,b);
}
}
return bankCards;
}

List<BankCard> bankCards=new ArrayList<BankCard>();
BankCard b;
boolean cardexist;
@Override
public BankCard login(String card, String pwd) {
    for (BankCard bankCard : bankCards) {
        if (bankCard.getCard().equals(card)&&bankCard.getPwd().equals(pwd)){
            this.cardexist=true;
            return bankCard;
        }
    }
    return null;
}
@Override
public void queryMany() {
    System.out.println("当前账户余额为:"+b.getOvermany());
}
@Override
public void wMany() {
    Scanner input=new Scanner(System.in);
    System.out.println("----------请选择菜单序号-------------");
    System.out.println("-----1.100          2.500-----");
    System.out.println("----3.1000          4.3000----");
    System.out.println("----5.8000          6.10000----");
    System.out.println("--7.100000          8.400000---");
    System.out.println("----------------------------------");
    int s=input.nextInt();
    switch (s){
        case 1:
            b.setOvermany(b.getOvermany()+100);
            queryMany();
            break;
        case 2:
            b.setOvermany(b.getOvermany()+500);
            queryMany();
            break;
        case 3:
            b.setOvermany(b.getOvermany()+1000);
            queryMany();
            break;
        case 4:
            b.setOvermany(b.getOvermany()+3000);
            queryMany();
            break;
        case 5:
            b.setOvermany(b.getOvermany()+8000);
            break;
        case 6:
            b.setOvermany(b.getOvermany()+10000);
            queryMany();
            break;
        case 7:
            b.setOvermany(b.getOvermany()+100000);
            queryMany();
            break;
        case 8:
            b.setOvermany(b.getOvermany()+400000);
            queryMany();
            break;
        default:
            System.out.println("输入错误");
            break;
    }
    for (int i = 0; i <bankCards.size() ; i++) {
        if (bankCards.get(i).getCard().equals(b.getCard())){
            bankCards.set(i,b);
        }
    }
}

@Override
public void deposit() {
    Scanner input=new Scanner(System.in);
    System.out.println("----------请选择菜单序号-------------");
    System.out.println("-----1.100          2.500-----");
    System.out.println("----3.1000          4.3000----");
    System.out.println("----5.8000          6.10000----");
    System.out.println("--7.100000          8.400000---");
    System.out.println("----------------------------------");
    int s=input.nextInt();
    switch (s){
        case 1:
            b.setOvermany(b.getOvermany()-100);
            queryMany();
            break;
        case 2:
            b.setOvermany(b.getOvermany()-500);
            queryMany();
            break;
        case 3:
            b.setOvermany(b.getOvermany()-1000);
            queryMany();
            break;
        case 4:
            b.setOvermany(b.getOvermany()-3000);
            queryMany();
            break;
        case 5:
            b.setOvermany(b.getOvermany()-8000);
            break;
        case 6:
            b.setOvermany(b.getOvermany()-10000);
            queryMany();
            break;
        case 7:
            b.setOvermany(b.getOvermany()-100000);
            queryMany();
            break;
        case 8:
            System.out.println("款项数目过大,请到柜台取款");
            break;
        default:
            System.out.println("输入错误");
            break;
    }
    for (int i = 0; i <bankCards.size() ; i++) {
        if (bankCards.get(i).getCard().equals(b.getCard())){
            bankCards.set(i,b);
        }
    }
}

@Override
public void transfer() {
    Scanner input=new Scanner(System.in);
    System.out.println("请输入转账账户");
    String tcard=input.next();
    System.out.println("请输入转账金额");
    int tmany=input.nextInt();
    for (BankCard bankCard : bankCards) {
        if (bankCard.getCard().equals(tcard)){
            b.setOvermany(b.getOvermany()-tmany);
            bankCard.setOvermany(bankCard.getOvermany()+tmany);
        }
    }
    for (int i = 0; i <bankCards.size() ; i++) {
        if (bankCards.get(i).getCard().equals(b.getCard())){
            bankCards.set(i,b);
        }
    }
    queryMany();
}

@Override
public void printcz() {

}

@Override
public void exitAtm() {
    this.cardexist=false;
}

@Override
public void queryallcard() {
    System.out.println("姓名    "+"卡号    "+"银行名称");
    for (BankCard bankCard : bankCards) {
        System.out.println(bankCard.getName()+"    "+bankCard.getCard()+"    "+bankCard.getBankName());
    }
}

public void setB(BankCard b) {
    this.b = b;
}
public BankCard getB() {
    return b;
}
public boolean isCardexist() {
    return cardexist;
}
public TtmImpl(List<BankCard> bankCards, boolean cardexist) {
    this.bankCards = bankCards;
    this.cardexist = cardexist;
}
public void setBankCards(List<BankCard> bankCards) {
    this.bankCards = bankCards;
}

public List<BankCard> getBankCards() {
    return bankCards;
}

}
最后创建TtmImpl 的实例
public class BankCard {
String Card;
String name;
String pwd;
String bankName;
int overmany;

public BankCard(String card, String name, String pwd, String bankName, int overmany) {
    Card = card;
    this.name = name;
    this.pwd = pwd;
    this.bankName = bankName;
    this.overmany = overmany;
}
public void setCard(String card) {
    Card = card;
}
public void setName(String name) {
    this.name = name;
}
public void setPwd(String pwd) {
    this.pwd = pwd;
}
public void setBankName(String bankName) {
    this.bankName = bankName;
}
public void setOvermany(int overmany) {
    this.overmany = overmany;
}
public String getCard() {
    return Card;
}
public String getName() {
    return name;
}
public String getPwd() {
    return pwd;
}
public String getBankName() {
    return bankName;
}
public int getOvermany() {
    return overmany;
}
@Override
public String toString() {
    return
            "Card='" + Card + '\'' +
            ", name='" + name + '\'' +
            ", pwd='" + pwd + '\'' +
            ", bankName='" + bankName + '\'' +
            ", overmany=" + overmany;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值