零钱通V2.0
说明:这是一个简单的练习小demo,做入门训练。有一些使用的开发小技巧,可以做整理,记录下。
初始化界面:
简单的4个使用小功能: :
收益入账
消费
零钱通明细
退出
代码设计:
package com.xiao.changemoney;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
/**
* 文件名:ChangeMoney
* 创建者:师晓峰
* 创建时间:2022/7/4 16:27
* 描述:零钱通 小demo
*/
public class ChangeMoney {
public static void main(String[] args) {
//首先设置页面
// 接收变量
Scanner MyScanner = new Scanner(System.in);
// 变量初始化
//选择
String res = null;
//结果
boolean quit = true;
/*
1 零钱明细
*/
//详情
String detail = "";
/*
2 收益入账
*/
//时间戳
Date date = null;
//余额
double money = 0;
double balance = 0;
SimpleDateFormat sfd = new SimpleDateFormat("yyyy-MM-dd HH:mm");
/*
3 消费
*/
String note = null;
do {
//页面
System.out.println("\n==========零钱通菜单===============");
System.out.println("\t\t 1 零钱通明细");
System.out.println("\t\t 2 收益入账");
System.out.println("\t\t 3 消费");
System.out.println("\t\t 4 退出");
System.out.print("请选择(1-4):");
res = MyScanner.next();
switch (res) {
case "1":
System.out.println("==========零钱通明细===============");
System.out.println(detail);
break;
case "2":
System.out.println("==========收益入账===============");
date = new Date();
System.out.print("收益金额:");
money = MyScanner.nextDouble();
// money 做校验 第一步
if( money <= 0){
System.out.println("收益入账的金额 需要 大于 0");
break;
}
// 校验~
balance += money;
detail += "\n 收益入账\t+" + money + "\t"
+ sfd.format(date) + "\t" + balance;
System.out.println(detail);
break;
case "3":
System.out.println("==========消费===============");
System.out.print("请输入消费金额:");
money = MyScanner.nextDouble();
// money 做校验 第一步
if( money <= 0 || money > balance){
System.out.println("你的消费金额 应该在 0-" + balance);
break;
}
balance -= money;
System.out.print("请输入消费说明:");
note = MyScanner.next();
detail += "\n " + note + "\t\t-" + money + "\t"
+ sfd.format(date) + "\t" + balance;
break;
case "4":
String choice = "";
while (true) {
System.out.println("你确定要退出嘛 N/Y");
choice = MyScanner.next();
if ("N".equals(choice) || "Y".equals(choice)) {
break;
}
}
// System.out.println("==========退出===============");
/*
while break 循环
*/
if (choice.equals("Y")) {
quit = false;
System.out.println("零钱通小程序已经退出了~");
}
break;
default:
System.out.println("你的输入有误,请重新输入~");
}
} while (quit);
}
}