0006JavaSE简单的项目FamilyAccount家庭记账控制台应用程序

效果如下

 

 实现代码

public class test7FamilyAccount{
public static void main(String[]args){
java.util.Scanner input = new java.util.Scanner(System.in);
boolean flag=true;
int balance=10000;//基本金
String detail="收支\t\t 账户金额\t 收支金额\t 说 明\n";
while(flag){
System.out.println("\t\t 1 收入明细");
System.out.println("\t\t 2 登记收入");
System.out.println("\t\t 3 登记支出");
System.out.println("\t\t 4 退 出");
System.out.println("\t\t-------------------");
System.out.println("请选择(1-4)");
int select =input.nextInt();//接收用户的选择
//判断用户的选择
switch(select){
case 1:
System.out.println(detail);
break;
case 2:
System.out.println("本次收入金额");
int money=input.nextInt();//接收用户收入多少金额

System.out.println("本次收入说明:");
String info=input.next();
balance+=money;
detail+="收入\t\t "+money+"\t\t "+balance+"\t\t "+info+"\n";
break;
case 3:
System.out.println("本次支出金额");
money=input.nextInt();//接收用户支出多少金额

System.out.println("本次支出说明:");
info=input.next();
balance+=money;
detail+="支出\t\t "+money+"\t\t "+balance+"\t\t "+info+"\n";
break;
case 4:
System.out.println("确认是否退出");
char confirm=input.next().charAt(0);//因为输入单个char太少用了,Scanner中没有提供输入单个char的方法,那么我们只能变通,先按字符串接收,然后取第一个字符
if(confirm=='Y'||confirm=='y'){
flag=false;
}
break;
default:
System.out.println("输入有误");
}
}
}
}

posted @ 2020-07-19 10:18  猛兽总是独行  阅读(181)  评论(0编辑  收藏  举报