package Money;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Objects;
import java.util.Scanner;
public class money {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
boolean loop = true;
double money = 0;
double balance = 0;
Date date = null;
SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm");
String infor = "-----------零钱通明细-----------";
do {
System.out.println("===========零钱通菜单==========");
System.out.println("\t\t1、零钱通明细");
System.out.println("\t\t2、收益入账");
System.out.println("\t\t3、消费");
System.out.println("\t\t4、退出");
System.out.println("请选择(1-4)");
String chose = input.next();
switch (chose) {
case "1":
System.out.println(infor);
break;
case "2":
System.out.println("请输入收益入账的金额:");
date = new Date(); //获取当前日期
money = input.nextDouble();
//判断入账是否合理
if (money <= 0) {
System.out.println("入账金额必须大于零,请重新输入:");
break;
}
balance += money;
//拼接到字符串中
infor += "\n收益入账 \t" + "+" + money + "\t" + time.format(date) + "\t" + "余额:" + balance;
break;
case "3":
System.out.println("请选择消费的金额:");
money = input.nextDouble();
if (money > balance) {
System.out.println("余额不足,请输入 1 查看余额");
break;
}
balance -= money;
infor += "\n收益入账 \t" + "-" + money + "\t" + time.format(date) + "\t" + "余额:" + balance;
break;
case "4":
String choice=""; //接收y/n
while (loop) {
System.out.println("是否确认退出零钱通(y/n):");
choice = input.next();
if ("y".equals(choice) || "n".equals(choice)) {
break; //退出循环
}
if (Objects.equals(choice, "y")) {
loop = false; //退出零钱通
break;
}else if (choice.equals("n")) {
break;
}
}
break;
default:
System.out.println("选择错误,请重新选择(1-4):");
}
}
while (loop) ;
System.out.println("=====退出了零钱通=====");
}
}
结果:
===========零钱通菜单==========
1、零钱通明细
2、收益入账
3、消费
4、退出
请选择(1-4)
2
请输入收益入账的金额:
500
===========零钱通菜单==========
1、零钱通明细
2、收益入账
3、消费
4、退出
请选择(1-4)
2
请输入收益入账的金额:
600
===========零钱通菜单==========
1、零钱通明细
2、收益入账
3、消费
4、退出
请选择(1-4)
3
请选择消费的金额:
2000
余额不足,请输入 1 查看余额
===========零钱通菜单==========
1、零钱通明细
2、收益入账
3、消费
4、退出
请选择(1-4)
1
-----------零钱通明细-----------
收益入账 +500.0 2024-07-30 07:49 余额:500.0
收益入账 +600.0 2024-07-30 07:49 余额:1100.0
===========零钱通菜单==========
1、零钱通明细
2、收益入账
3、消费
4、退出
请选择(1-4)
3
请选择消费的金额:
200
===========零钱通菜单==========
1、零钱通明细
2、收益入账
3、消费
4、退出
请选择(1-4)
1
-----------零钱通明细-----------
收益入账 +500.0 2024-07-30 07:49 余额:500.0
收益入账 +600.0 2024-07-30 07:49 余额:1100.0
收益入账 -200.0 2024-07-30 07:49 余额:900.0
===========零钱通菜单==========
1、零钱通明细
2、收益入账
3、消费
4、退出
请选择(1-4)