家庭收支系统
代码演示
package com.liudashuai;
import java.util.HashMap;
import java.util.Scanner;
public class Accounting {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
boolean loopFlag = true;
HashMap<Integer,String[]> table=new HashMap<>();
table.put(table.size(),new String[]{"收入/支出","账户总金额","收入金额","说 明"});
table.put(table.size(),new String[]{"收入","10000","0","原始金额"});
while (loopFlag) {
show_Main_Menu();
int num = scanner.nextInt();
if (num > 4 || num < 1) {
System.out.println("选项不存在:请重新输入!");
try {
Thread.sleep(1500);
} catch (InterruptedException e) {
e.printStackTrace();
}
continue;
}
switch (num) {
case 1:
print_Payment_Details(table);
break;
case 2:
record_Revenue(table);
break;
case 3:
record_spending(table);
break;
case 4:
loopFlag = quit();
break;
}
}
System.out.println("\t \t 感谢您的使用!!!");
}
private static void print_Payment_Details(HashMap<Integer,String[]> table) {
String[] string;
string=table.get(0);
System.out.println(string[0]+" "+string[1]+" "+string[2]+" "+string[3]);
for (Integer key:table.keySet()) {
if (key==0){continue;}
string=table.get(key);
System.out.printf("%-15s %-15s %-15s %-15s \n",string[0],string[1],string[2],string[3]);
}
try {
Thread.sleep(1500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
private static void record_Revenue(HashMap<Integer,String[]> table) {
System.out.println("请输入收入的金额:");
Scanner scanner=new Scanner(System.in);
String money=scanner.next();
System.out.println("请输入收入描述:");
String describe=scanner.next();
String[] strings=new String[4];
strings[0]="收入";
String[] strings1=table.get(table.size()-1);
Integer sum= Integer.valueOf(strings1[1]);
strings[1]= String.valueOf(Integer.valueOf(money)+sum);
strings[2]="+"+money;
strings[3]=describe;
table.put(table.size(),strings);
System.out.println("输入成功!!");
try {
Thread.sleep(1500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
private static void record_spending(HashMap<Integer,String[]> table) {
System.out.println("请输入支出的金额:");
Scanner scanner=new Scanner(System.in);
String money=scanner.next();
System.out.println("请输入支出描述:");
String describe=scanner.next();
String[] strings=new String[4];
strings[0]="支出";
String[] strings1=table.get(table.size()-1);
Integer sum= Integer.valueOf(strings1[1]);
strings[1]= String.valueOf(sum-Integer.valueOf(money));
strings[2]="-"+money;
strings[3]=describe;
table.put(table.size(),strings);
System.out.println("输入成功!!");
try {
Thread.sleep(1500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
private static boolean quit() {
return false;
}
private static void show_Main_Menu() {
System.out.println("----------家庭收支记账软件----------");
System.out.println();
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();
System.out.print("请选择(1-4):");
}
}
结果展示


