零钱通简易版

可以用于日期初始化
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");

代码如下:

package 零钱通;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
import java.util.logging.SimpleFormatter;

public class ChangePass {
    //初始化变量
    double money = 0;
    double balance = 0;//余额
    //date 是 Java。util.Date 类型,表示日期
    Date date = null;
    //可以用于日期初始化
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    String note = "";//消费
    //定义相关变量
    boolean loop = true;
    String details = "------------零钱通明细------------";

    //菜单函数
    public void Menu() {
        while (true) {
            System.out.println("==========零钱通菜单==========");
            System.out.println("        1 零钱通明细          ");
            System.out.println("        2 收益入账            ");
            System.out.println("        3 消费               ");
            System.out.println("        4 退出               ");
            Scanner sc = new Scanner(System.in);
            System.out.println("请选择(1-4):");
            String line = sc.nextLine();
            switch (line) {
                case "1":
                    System.out.println(details);
                    break;
                case "2":
                    income();
                    break;
                case "3":
                    pay();
                    break;
                case "4":
                    System.out.println("欢迎下次使用!");
                    System.exit(0);
            }
        }
    }

    //零钱通明细
    public void detail() {
        System.out.println(details);
    }

    //完成收益入账
    public void income() {
        System.out.println("收益入账金额:");
        Scanner sc = new Scanner(System.in);
        money = sc.nextDouble();
        if (money <= 0) {
            System.out.println("收益入账金额需要大于0");
            return;
        }
        balance += money;
        date = new Date();
        details += "\n收益入账\t" + money + "\t" + sdf.format(date) + "\t" + balance;
    }


    //消费
    public void pay() {
        System.out.println("消费金额:");
        Scanner sc = new Scanner(System.in);
        money = sc.nextDouble();
        if (money <= 0 | money > balance) {
            System.out.println("你没有这么多钱" + balance);
            return;   //利用return跳出循环
        }
        System.out.println("消费说明:");
        Scanner s = new Scanner(System.in);
        note = s.next();
        balance -= money;
        //拼接消费信息到details
        date = new Date();
        details += "\n" + note + "\t" + money + "\t" + sdf.format(date) + "\t" + balance;
    }


}

测试类:

package 零钱通;

public class test {
    public static void main(String[] args) {
        new ChangePass().Menu();
    }
}

运行:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值