Client.java
上传用户:hensond
上传日期:2021-12-27
资源大小:817k
文件大小:2k
源码类别:

软件工程

开发平台:

Java

  1. package com.company;
  2. import java.io.BufferedReader;
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5. /**
  6.  * @author cbf4Life cbf4life@126.com
  7.  * I'm glad to share my knowledge with you all.
  8.  */
  9. public class Client {
  10. //模拟交易
  11. public static void main(String[] args) {
  12. //初始化一张IC卡
  13. Card card = initIC();
  14. //显示一下卡内信息
  15. System.out.println("========初始卡信息:=========");
  16. showCard(card);
  17. //是否停止运行标志
  18. boolean flag = true;
  19. while(flag){
  20. Trade trade = createTrade();
  21. DeductionFacade.deduct(card, trade);
  22. //交易成功,打印出成功处理消息
  23. System.out.println("n======交易凭证========");
  24. System.out.println(trade.getTradeNo()+" 交易成功!");
  25. System.out.println("本次发生的交易金额为:"+ trade.getAmount()/100.0 + " 元");
  26. //展示一下卡内信息
  27. showCard(card);
  28. System.out.print("n是否需要退出?(Y/N)");
  29. if(getInput().equalsIgnoreCase("y")){
  30. flag = false;  //退出;
  31. }
  32. }
  33. }
  34. //初始化一个IC卡
  35. private static Card initIC(){
  36. Card card = new Card();
  37. card.setCardNo("1100010001000");
  38. card.setFreeMoney(100000);  //一千元
  39. card.setSteadyMoney(80000); //八百元
  40. return card;
  41. }
  42. //产生一条交易
  43. private static Trade createTrade(){
  44. Trade trade = new Trade();
  45. System.out.print("请输入交易编号:");
  46. trade.setTradeNo(getInput());
  47. System.out.print("请输入交易金额:");
  48. trade.setAmount(Integer.parseInt(getInput()));
  49. //返回交易
  50. return trade;
  51. }
  52. //打印出当前卡内交易余额
  53. public static void showCard(Card card){
  54. System.out.println("IC卡编号:" + card.getCardNo());
  55. System.out.println("固定类型余额:"+ card.getSteadyMoney()/100.0 + " 元");
  56. System.out.println("自由类型余额:"+ card.getFreeMoney()/100.0 + " 元");
  57. }
  58. //获得键盘输入
  59. public static String getInput(){
  60. String str ="";
  61. try {
  62. str = (new BufferedReader(new InputStreamReader(System.in))).readLine();
  63. } catch (IOException e) {
  64. //异常处理
  65. }
  66. return str;
  67. }
  68. }