1. 零钱通
1.1 项目开发流程说明
1.1.1 项目需求说明
使用 Java 开发 零钱通项目 , 可以完成收益入账,消费,查看明细,退出系统等功能
1.2 项目界面
2. 项目代码 335
化繁为简.
1) 先完成显示菜单,并可以选择
2) 完成零钱通明细.
3) 完成收益入账
4) 消费
5) 退出
先使用过程编程(传统方法),后面改成 OOP (面向对象)版本,请小伙伴体会 OOP 编程带来的好处
2.1 过程编程(传统方法) 335
代码在com.stulzl.smallchangesys包中
smallchangesys
package com.stulzl.smallchangesys;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class SmallChangeSys {
//化繁为简
//1. 完成菜单,并可以选择菜单,给出对应的提示
//2. 完成零钱通明细.
//3. 完成收益入账
//4. 消费
//5. 退出
public static void main(String[] args) {
boolean loop = true;//循环的变量
Scanner scanner = new Scanner(System.in);
int key = 0;//switch case语句的变量
// 2. 完成零钱通明细.336
//思路,三种方法1.可以把收益入账和消费,保存到数组中 2.也可以使用对象 3.简单的话也可以使用String拼接
//我们选择String拼接
String details = "";
//3. 完成收益入账337
double money = 0;//收益
double balance = 0;//余额
Date date = null;//Date是java.util.Date类,表示日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");//可以用于日期格式化
//4. 消费 338
//定义新的变量记录保存消费原因
String note = "";
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("==========零钱通菜单==========");
System.out.println("请选择(1-4):");
key = scanner.nextInt();
switch(key){
case 1:
System.out.println("--------零钱通明细--------");
System.out.println(details);
break;
case 2:
System.out.print("收益入账金额:");
money = scanner.nextDouble();//收入
//零钱校验
balance+=money;
//拼接接收收益信息details
date =new Date();//获取当前日期
//这句details拼接重点是 \n 拼接是将所有的收入信息拼成一长条的一句话(因为是+=),
// 但是利用\n则可以分开
details += "\n收益入账\t"+money+"\t"+sdf.format(date)+"\t余额:"+balance;
break;
case 3:
System.out.print("消费金额:");
money = scanner.nextDouble();//消费
//消费校验
System.out.println("请输入消费原因:");
note = scanner.next();
balance-=money;
//拼接接收消费信息details
date =new Date();//获取当前日期
//这句details拼接重点是 \n 拼接是将所有的收入信息拼成一长条的一句话(因为是+=),
// 但是利用\n则可以分开
details += "\n"+note+"\t-"+money+"\t"+sdf.format(date)+"\t余额:"+balance;
break;
case 4:
System.out.println("4 退 出");
loop = false;
break;
default:
System.out.println("您的输入有误,请重新输入");
}
}while(loop);
System.out.println("--------退出零钱通系统--------");
}
}