import java.text.SimpleDateFormat;
import java.util.Scanner;
import java.util.Date;
public class process {
public static void main(String[]args) {
boolean ret = true;
String key;
Scanner myscanner=new Scanner(System.in);
String details=“-------------------零钱通明细------------------”;
double money=0;
double balance=0;
Date date=null;
String note;
SimpleDateFormat sdf=new SimpleDateFormat(“yyyy-MM-dd HH:mm”);
do {
System.out.println(“=零钱通菜单===”);
System.out.println(“\t1. 零钱通明细”);
System.out.println(“\t2. 收益入账”);
System.out.println(“\t3. 消费”);
System.out.println(“\t4. 退出”);
System.out.println(“请选择1-4”);
key=myscanner.next();
switch (key)
{
case "1":
System.out.println("\n"+details);
break;
case"2":
System.out.println("2. 收益入账");
boolean B=true;
do{
money=myscanner.nextInt();
if(money<=0)
{
System.out.println("输入要大于0不合法重新输入");
}
else
{
balance=balance+money;
B=false;
}
}while(B);
date=new Date();
details= details+"\n收益入账\t+" +money+ "\t" + sdf.format(date)+"\t"+"总余额"+balance;
System.out.println(details);
break;
case"3":
boolean A=true;
System.out.println("3. 消费");
System.out.println("消费金额");
do {
money = myscanner.nextDouble();
if(balance-money>=0&&money>=0)
A=false;
else
System.out.println("余额不足,或者输入为负,重新输入消费金额");
}
while(A );
balance=balance-money;
System.out.println("消费项目");
note=myscanner.next();
date=new Date();
details= details+"\n消费扣除\t-" +money+ "\t" + sdf.format(date)+"\t"+"总余额"+balance;
System.out.println(details);
break;
case"4":
System.out.println("4.退出");
String choice;
while(true)
{
System.out.println("你确定要退出吗?y/n");
choice=myscanner.next();
if("y".equals(choice)||"n".equals(choice))
break;
}
if("y".equals(choice))
{
ret=false;
break;
}
else
{
break;
}
default:
System.out.println("输入不合法,请重新输入");
}
}
while (ret);
}
}
至此结束,第一阶段的面向过程设计,第二种面向过程以下给出