Java开发一个家庭收支记账软件

4.请开发一个家庭收支记账软件
界面及操作过程如下所示:
-----------------家庭收支记账软件-----------------
1 收支明细
2 登记收入
3 登记支出
4 退 出
请选择(1-4):
选择1:
-----------------当前收支明细记录-----------------
收支 账户金额 收支金额 说 明
收入 11000 1000 劳务费
支出 10200 800 物业费

选择2:
本次收入金额:1000
本次收入说明:劳务费_
选择3:
本次支出金额:800
本次支出说明:物业费_
根据需求提取出类,属性和方法,完成上述功能

/**
 * 
 */
package com.gem.demo.day05_practice;

/**
 *
 * Description:
 *
 * @author HadwinLing
 *
 * @date 2020年1月14日下午6:31:36
 *
 * @version 0.0.1 
 *
 */
public class Home {
	double income;
	double expend;
	double all;
	String IncomeDetail;
	String expendDetail;
	Home(){
		income = 0;
		expend= 0;
		all = 10000;
	}
	Home(double all,double income, double expend,String incomeDetail,String expendDetail){
		this.all = all;
		this.income = income;
		this.expend = expend;
		this.IncomeDetail = incomeDetail;
		this.expendDetail = expendDetail;
	}
	
	
	public double getAll() {
		return all;
	}
	public void setAll(double all,double income,double expend) {
		this.all = all+income-expend;
	}
	public double getIncome() {
		return income;
	}
	public void setIncome(double income) {
		
		this.income = income;
	}
	public double getExpend() {
		return expend;
	}
	public void setExpend(double expend) {
		this.expend = expend;
	}

	public String getIncomeDetail() {
		return IncomeDetail;
	}
	public void setIncomeDetail(String incomeDetail) {
		IncomeDetail = incomeDetail;
	}
	public String getExpendDetail() {
		return expendDetail;
	}
	public void setExpendDetail(String expendDetail) {
		this.expendDetail = expendDetail;
	}
	void printIncome() {
		System.out.println("收入 \t"+(all+income-expend)+"\t"+income+"\t"+IncomeDetail);
	}
	void printExpend() {
		System.out.println("支出 \t"+(all+income- expend)+"\t"+expend+"\t"+expendDetail);
	}
	public void printAll() {
		// TODO Auto-generated method stub
		System.out.println("-----------------当前收支明细记录-----------------");
		System.out.println("收支 "+"\t"+"账户金额" +"\t"+"收支金额 "+"\t"+"说  明");
		printIncome();
		printExpend();
		System.out.println("------------------------------------");
	}
}

类的测试

package com.gem.demo.day05_practice;

import java.util.Scanner;

public class HomeTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("-----------------家庭收支记账软件----------------- ");
		System.out.println("1:收支明细");
		System.out.println("2:登记收入");
		System.out.println("3:登记支出");
		System.out.println("4:退出");
		Scanner input = new Scanner(System.in);
		Home  h = new Home();
		boolean flag =true;
		while(flag) {
			System.out.println("请选择(1~4)");
			int num = input .nextInt();
			switch(num) {
				case 1:
					h.printAll();
					break;
				case 2:
					System.out.print("本次收入金额为:");
					int income = input.nextInt();
					System.out.print("本次收入说明为:");
					String incomeDetail = input.next();
					h.setIncome(income);
					h.setIncomeDetail(incomeDetail);
					break;
				case 3:
					System.out.print("本次支出金额为:");
					int expend = input.nextInt();
					System.out.print("本次支出说明为:");
					String expendDetail = input.next();
					h.setExpend(expend);
					h.setExpendDetail(expendDetail);
					break;
				case 4:
					flag = false;
					break;
				default:
						System.out.println("输入有误");
				}
		}
	}
}

目前想到这个方法,欢迎各位在评论下写下你的实现的链接,一起进步。

发布了42 篇原创文章 · 获赞 12 · 访问量 6121

猜你喜欢

转载自blog.csdn.net/Alingyuzi/article/details/103980186
今日推荐