package SmallChangeSys.oop; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; //该类 是完成零钱通的各个功能类 //使用面向对象编程 OOP //将各个功能对应一个方法 public class SmallChangeSysOOP { //属性 boolean loop = true; Scanner scanner = new Scanner(System.in); String key = ""; String details = "----------零钱通明细-------------n"; double money = 0; double balance = 0; String note = ""; Date date = null; //表示日期 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");//可用于日期格式化 //1.先完成显示菜单 并可以选择菜单,给出对应显示 public void mainMenu(){ do{ System.out.println("========选择零钱通菜单========="); System.out.println("ttt1 零钱通明细"); System.out.println("ttt2 收益入帐"); System.out.println("ttt3 消 费"); System.out.println("ttt4 退 出"); System.out.println("请选择(1-4): "); key = scanner.next(); //使用 switch 分支控制 switch (key){ case "1" : this.detail(); break; case "2" : this.income(); break; case "3" : this.pay(); break; case "4" : this.exit(); break; default: System.out.println("选择有误,请重新选择"); } } while (loop); } //完成零钱通明细 public void detail(){ System.out.println(details); } //完成收益入账 public void income(){ System.out.println("收益入帐金额"); money = scanner.nextDouble(); //money 的值范围应该校验 --> 一会再完善 //老韩思路 编程思想 //找出不正确的金额条件,然后给出提示,就直接break; if(money <= 0){ System.out.println("收益入账金额范围需要 大于2 0"); return; //退出方法,不再执行 } balance += money; //拼接收益入账信息到details date = new Date(); details += "n收益入账t"+ money + "t" + sdf.format(date) + "t" + balance; } public void pay(){ System.out.println("消费金额"); money = scanner.nextDouble(); //money 的值范围应该校验 --> 一会再完善 if(money <= 0 || money > balance){ System.out.println("你的消费金额应该在 0 - "+ balance); return; } System.out.println("消费说明"); note = scanner.next(); balance -= money; date = new Date(); details += "n"+ note + "t-" + money + "t" + sdf.format(date) + "t" + balance; } //退出 public void exit(){ String choice = ""; while (true){ System.out.println("你确定要退出吗? y/n"); choice = scanner.next(); if("y".equals(choice) || "n".equals(choice)){ break; } } if(choice.equals("y")){ loop = false; } System.out.println("4 退 出"); loop = false; } }
再写一个类引用
package SmallChangeSys.oop; public class SmallChangeSysApp { public static void main(String[] args) { new SmallChangeSysOOP().mainMenu(); } }
结果部分贴图
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)