首先定义一个接口
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;
}