编写一个小程序:家庭收支记账
效果如下:
以下是代码:
import java.util.Scanner;
public class Demo1{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
String type = null;
double totalMoney = 0.0;
double money;
String expresion;
String details = "";
int chioce;
String chese;
char ch;
boolean flag = true;
do{
System.out.println("---------------------------------------家庭收支记账软件-----------------------------------\n");
System.out.println("\t\t\t\t\t1.收支明细");
System.out.println("\t\t\t\t\t2.登记收入");
System.out.println("\t\t\t\t\t3.登记支出");
System.out.println("\t\t\t\t\t4.退\t出");
System.out.println("\t\t\t\t\t请选择(1-4):");
chioce = sc.nextInt();
switch(chioce){
case 1 :
System.out.println("\n------------------------------------当前收支明细记录--------------------------------------");
System.out.println("收 支\t\t账户金额\t\t收支金额\t\t说 明");
if(type != null)
System.out.println(details);
System.out.println("\n------------------------------------------------------------------------------------------");
break;
case 2 :
type = "收入";
System.out.print("本次收入金额:");
money = sc.nextDouble();
totalMoney += money;
System.out.print("本次收入说明:");
expresion = sc.next();
details += type + "\t\t" + totalMoney +"\t\t\t"+ money +"\t\t\t"+ expresion + "\n";
System.out.println("\n----------------------------------------登记完成------------------------------------------");
break;
case 3 :
type = "支出";
System.out.print("本次支出金额:");
money = sc.nextDouble();
if(totalMoney < money)
System.out.println("您的余额不足。");
else{
totalMoney -= money;
System.out.print("本次支出说明:");
expresion = sc.next();
details += type + "\t\t" + totalMoney +"\t\t\t"+ money +"\t\t\t"+ expresion + "\n";
System.out.println("\n---------------------------------------登记完成-------------------------------------------");
}
break;
case 4 :
System.out.print("是否确认退出(Y/N):");
chese = sc.next().toUpperCase();
ch = chese.charAt(0);
if(ch == 'Y'){
System.out.println("\n---------------------------------------退出成功-------------------------------------------");
flag = false;
}
break;
default :
System.out.println("数字输入错误,请重新输入:");
}
}while(flag);
}
}