华恩JAVA班第17天

xiaoxiao2021-02-28  110

华恩JAVA班第17天

import java.util.*; public class BankApp {  static BankService bankService = newBankService();  public static void main(String[] args)  {   Scanner sc = new Scanner(System.in);   boolean flag = true;   while (flag)   {    printWecomeInfo();    println("请选择操作项:");    int value =sc.nextInt();    if(value == 1){    //显示下一级菜单    operBusiness(sc);    }else if(value == 2){     flag =false;    }else{    printWecomeInfo();    }   }  }  public static void operBusiness(Scannersc){   boolean flag = true;   Random rnd = new Random(1000);   while (flag)   {    printSysMenuInfo();    println("请选择操作项:");    int value =sc.nextInt();    switch (value)    {     case1:          println("开户业务: ");     println("请输入户名: ");     String name = sc.next();     println("请输入年龄: ");     int age = sc.nextInt();     println("请输入性别: ");     String sex = sc.next();     println("请输入手机: ");     String phone = sc.next();     println("请输入地址: ");     String address = sc.next();     Account account = new Account(name,      age,sex,phone,address);     if(bankService.checkAccount(account)){     int no = rnd.nextInt(1000);     println("生成的卡号:"+no);     println("输入卡的密码:");     String pwd = sc.next();     Card card = new Card(String.valueOf(no),0d);     account.setCard(card);     card.setAccount(account);     card.setPassword(pwd);     bankService.createAccount(account);     }else{     println("账户名称不正确!");     }      break;     case2:     qk(sc);     break;     case3:     //存款时需要提供卡号     ck(sc);break;     case4:     zz(sc);break;     case5:     cx(sc);break;     case9:     flag = false;break;    default:     println("输入错误");break;    }   }    }  public static void cx(Scanner sc){   println("请输入卡号;");   String bo1 = sc.next();   //校验卡号是否存在   Card card = bankService.checkCard(bo1);   if(card == null){    println("卡不存在");return ;   }   println("请输入密码;");   String psw = sc.next();   if (!bankService.checkCardpsw(card,psw))   {    println("密码错误!!");    return ;   }   System.out.println(card.getAccount());   System.out.println(card);  }  public static void zz(Scanner sc){   println("请输入您的卡号;");   String bo1 = sc.next();   //校验卡号是否存在   Card card = bankService.checkCard(bo1);   if(card == null){    println("卡不存在");return ;   }   println("请输入密码;");   String psw = sc.next();   if (!bankService.checkCardpsw(card,psw))   {    println("密码错误!!");    return ;   }   println("请输入转账金额:");   double je = sc.nextDouble();   if(bankService.checkMoney(card,je)){    println("请输入目标卡号;");    String bo2 = sc.next();    //校验卡号是否存在    Card card2 =bankService.checkCard(bo2);    if(card2 == null){    println("卡不存在");return ;    }    println("目标的信息是");   System.out.println(card2.getAccount());    println("是否确定\n1.确定.\n2.返回");    int b = sc.nextInt();    if(b == 1)    { card.outMoney(je);     card2.inMoney(je);     println("转账成功");     println(card.toString());    }else {     return;    }   }else{    println("余额不足!");   }  }  //取款  public static void qk(Scanner sc){   println("请输入卡号;");   String bo = sc.next();   //校验卡号是否存在   Card card = bankService.checkCard(bo);   if(card == null){    println("卡不存在");return ;   }   println("请输入密码;");   String psw = sc.next();   //校验密码是否匹配   if (!bankService.checkCardpsw(card,psw))   {    println("密码错误!!");    return ;   }   println("请输入取款金额:");   double je = sc.nextDouble();   //校验余额是否足够   if(bankService.checkMoney(card,je)){    card.outMoney(je);    println("取款成功");    //输出银行卡信息   println(card.toString());   }else{    println("余额不足!");   }  }  //存款  public static void ck(Scanner sc){   println("请输入卡号;");   String bo = sc.next();   //校验卡号是否存在   Card card = bankService.checkCard(bo);   if(card == null){    println("卡不存在");return ;   }   println("请输入金额!");   double money = sc.nextDouble();   card.inMoney(money);   println("存款成功!");   println(card.toString());  }  //开户  public static void printSysMenuInfo(){   println("*******************");  println("*业务操作提示    *");  println("*1:开户          *");  println("*2:取款          *");  println("*3:存款          *");  println("*4:转账          *");  println("*5:查询          *");  println("*9:返回          *");   println("*******************");  }  public static void printWecomeInfo(){   println("*******************");   println("*欢迎进入银行系统 *");  println("*操作提示:       *");  println("*1:登陆          *");  println("*2:退出          *");   println("*******************");  }  public static void println(String content){   System.out.println(content);  } }

 

 

 

public class Account {  private String name;  private int age;  private String sex;  private String phone;  private String address;  private Card card;  public String getName(){   return this.name;  }  public String getSex(){   return this.sex;  }  public int getAge(){   return this.age;  }  public String getPhone(){   return this.phone;  }  public String getAddress(){   return this.address;  }  public Account(String name ,int age ,   String sex , String phone ,Stringaddress){   this.name = name;   this.age = age;   this.sex = sex;   this.phone = phone;   this.address = address;  }  public void setCard(Card card){   this.card =card;    }  public Card getCard(){   return this.card;  }  public String toString(){   //此代码效率极差   //todo   String out = "**************\n";   out +=  "*账户信息列表*\n";   out+=      "*户名: "+this.name+"*\n";   out+=      "*年龄: "+this.age+"*\n";   out+=      "*性别: "+this.sex+"*\n";   out+=      "*电话: "+this.phone+"*\n";   out+=      "*地址: "+this.address+"*\n";   out+=      "*-------------*\n";   return out;  } }

 

 

class BankService {  private Account[] accounts = newAccount[20];    public void createAccount(Account account){   boolean flag = false ;   for (int i = 0;i   {    if (accounts[i] == null)    {     accounts[i]= account ;     flag = true;     break;    }   }   if(!flag){   System.out.println("账户已满");   }else{   System.out.println(account);   System.out.println("注册成功");   }  }    public boolean checkAccount(Accountaccount){   if(account.getName() == null ||   account.getName().equals("")){    return false;   }   if(account.getSex() == null ||   account.getSex().equals("")){    return false;   }   return true;  }  public Card checkCard(String card){   for (int i = 0;i   {    if (accounts[i] != null&&accounts[i].getCard()!=null    &&accounts[i].getCard().getCardNo().equals(card))    {     returnaccounts[i].getCard();    }   }   return null;  }  public boolean checkCardpsw(Card card,Stringpassword){   if(card.getPassword().equals(password))    return true;   return false;  }  public boolean checkMoney(Card card, doublemoney){   if(card.getMoney()    return false;   return true;  } }

 

 

 

 

public class Card {  private Account account;  private String cardNo;  private Double money;  private String password;  public void setAccount(Account account){   this.account = account;  }  public Account getAccount(){   return this.account;  }  public Card(String cardNo){   this.cardNo = cardNo;  }  public Card(String cardNo,double money){   this(cardNo);   this.money = money;  }  public Double getMoney(){   return this.money;  }  public void inMoney(Double money){   this.money += money;  }  public void outMoney(Double money){   this.money -= money;  }  public String getCardNo(){   return this.cardNo;  }    public void setPassword(String password){   this.password = password;  }  public String getPassword(){   return this.password;  }  public String toString(){   //todo   String out ="*---------银行卡信息----------*\n";   out+=      "*银行卡信息        *\n";   out +=  "卡号       "+this.cardNo+"       *\n";   out +=  "银行卡余额 "+this.money+"       *\n";   out += "*-------------------*\n";   return out;  } }

转载请注明原文地址: https://www.6miu.com/read-75680.html

最新回复(0)