/*
*@author:orsrrc
*CSDN:https://blog.csdn.net/qq_52321992?type=blog
* 博客园:https://www.cnblogs.com/orsrrc/
*/没有用到数据库,使用基础的java知识就可以设计一个
import java.util.Scanner;
public class FamilyAccount {public static void main(String args[])
{System.out.print("请输入你的存款:");
Scanner money = new Scanner(System.in);
double balance = money.nextDouble();
boolean isflag = true;
String details = "收支\t账户金额\t收支金额\t 说 明\n";
while(isflag)
{System.out.println("--------账户收支登记表--------");
System.out.println("\t1.收支明细");
System.out.println("\t2.登记收入");
System.out.println("\t3.登记支出");
System.out.println("\t4.退出");
System.out.print("请选择(1~4):");
Scanner Choice = new Scanner(System.in);
int Case = Choice.nextInt();
for(;;)
{if(Case != 1 && Case != 2 && Case != 3 && Case != 4)
{System.out.println("输入错误,请重新输入:");
Scanner Rechoice = new Scanner(System.in);
Case = Rechoice.nextInt();
}
else
break;
}
//对错误情况的判断以及筛选
switch (Case)
{case 1: System.out.println("-----------当前收支明细记录-----------");
System.out.println(details);
System.out.println("----------------------------------");
break;
case 2: System.out.print("本次收入金额:");
Scanner number = new Scanner(System.in);
double income = number.nextDouble();
//更新balance的值
balance += income;
System.out.print("说明:");
Scanner text = new Scanner(System.in);
String explain = text.next();
//更新details的值
details += ("收入\t" + balance + "\t" + income + "\t " + explain+"\n");
System.out.println("登记成功!\n");
break;
case 3: System.out.print("本次支出金额:");
Scanner Out = new Scanner(System.in);
double pay = Out.nextDouble();
//更新balance的值
if(balance >= pay)
{balance -= pay;
}
else
{System.out.println("支出大于你的余额,登记失败!");
break;
}
System.out.print("说明:");
Scanner Text = new Scanner(System.in);
String Explain = Text.next();
//更新details的值
details += ("支出\t" + balance + "\t" + pay + "\t " + Explain + "\n");
System.out.println("登记成功!\n");
break;
case 4: System.out.println("你确定要退出吗?(1/0)");
Scanner scan = new Scanner(System.in);
int isexit = scan.nextInt();
if(isexit == 1)
{isflag = false;
System.out.println("this is a test");
}
break;
//将isflage的值改为假跳出循环,达到退出程序的目的。
}
}
}
}
Java实现家庭账户收支记录表
于 2021-11-01 08:12:50 首次发布