题目来自于尚硅谷基础项目1,其中没有使用项目提供的现成的方法

测试类

package test;import face.MainInterFace;
import code.*;
public class MainInterFace_Test {public static void main(String[] args) {MainInterFace testMain = new MainInterFace();testMain.face();Scanf scanf = new Scanf();scanf.scan();}
}

主界面

package face;public class MainInterFace {public void face(){System.out.println("-----------------家庭收支记账软件-----------------");System.out.println();System.out.println("             1 收支明细");System.out.println("             2 登记收入");System.out.println("             3 登记支出");System.out.println("             4 退 出");System.out.println();System.out.println("             请选择(1-4):");}
}

核心方法

package code;
import test.*;
import face.*;
import code.*;
import java.util.Scanner;public  class MainControl{int balance = 10000;String []inOrPut = new String[99];int []nowBalance = new int[99];int []bills = new int[99];String []details = new String[99];int i = 0;Scanner scanner = new Scanner(System.in);public void detail(){System.out.println("-----------------当前收支明细记录-----------------");System.out.println("收支 账户金额 收支金额 说 明");for(int j = 0;j < i;j++){System.out.println(inOrPut[j]+"\t"+nowBalance[j]+"\t"+bills[j]+"\t  "+details[j]);}}public void inCome(){System.out.println("请输入收入金额:");int money = scanner.nextInt();System.out.println("请输入收入明细:");String note = scanner.next();balance = balance + money;inOrPut[i] = "收入";nowBalance[i] = balance;bills[i] = money;details[i] = note;i++;System.out.println("本次收入金额:"+money);System.out.println("本次收入说明:"+note);}public void cost(){System.out.println("请输入支出金额:");int money = scanner.nextInt();System.out.println("请输入支出明细:");String note = scanner.next();balance = balance - money;inOrPut[i] = "支出";nowBalance[i] = balance;bills[i] = money;details[i] = note;i++;System.out.println("本次支出金额:"+money);System.out.println("本次支出说明:"+note);}MainInterFace scanface = new MainInterFace();public void exit(){Scanf SC = new Scanf();System.out.println("确认是否退出(Y/N):");String x = scanner.next();switch (x){case "y":return;case "Y":return;default:{scanface.face();SC.scan();}}}}

流程控制

package code;import java.util.Scanner;
import code.*;
import face.*;
import test.MainInterFace_Test;public  class Scanf {Scanner scanner = new Scanner(System.in);MainInterFace scanface = new MainInterFace();MainControl con = new MainControl();public void scan(){String number = scanner.next();switch(number){case "1": con.detail();{scanface.face();scan();};case "2": con.inCome();{scanface.face();scan();};case "3": con.cost();{scanface.face();scan();};case "4": con.exit();break;default:{System.out.println("输入错误,请重新输入");scan();}}}
}

测试页面

-----------------家庭收支记账软件-----------------1 收支明细2 登记收入3 登记支出4 退 出请选择(1-4):2
请输入收入金额:
200
请输入收入明细:
搬砖
本次收入金额:200
本次收入说明:搬砖
-----------------家庭收支记账软件-----------------1 收支明细2 登记收入3 登记支出4 退 出请选择(1-4):
3
请输入支出金额:
5
请输入支出明细:
买红薯
本次支出金额:5
本次支出说明:买红薯
-----------------家庭收支记账软件-----------------1 收支明细2 登记收入3 登记支出4 退 出请选择(1-4):
1
-----------------当前收支明细记录-----------------
收支 账户金额 收支金额 说 明
收入  10200   200   搬砖
支出  10195   5     买红薯

Java实现家庭收支记账软件相关推荐

  1. java基础(家庭收支记账软件)

    家庭收支记账软件 目标 模拟实现一个基于文本界面的<家庭记账软件> 掌握初步的编程技巧和调试技巧 主要涉及以下知识点: 变量的定义 基本数据类型的使用 循环语句 分支语句 方法声明.调用和 ...

  2. Java实现家庭收支记账软件及编写过程中的注意事项

    一.思路 1.明确需求 总需求也就是家庭收支记账软件要实现的功能,要能实现记录家庭的收入与支出,并打印收支明细表. 2.实现步骤 第一步要展示程序的主界面,内容要包含四个菜单选项. 第二步实现根据用户 ...

  3. java家庭收支记账软件-day01

    import java.util.Scanner; public class itemfamily {public static void main(String[] args) {Scanner s ...

  4. 家庭收支记账软件--Java

    家庭收支记账软件–Java 需求描述: 模拟实现基于文本界面的<家庭记账软件>. 该软件能够记录家庭的收入.支出,并能够打印收支明细表. 项目采用分级菜单方式.主菜单如下: 需求说明: 假 ...

  5. Java项目:家庭收支记账软件

    目录 前言 一.任务要求 二.实现代码 总结 前言 最近花了一个星期看了JAVA经典书籍<Java核心技术卷I>,囫囵吞枣般看完,领略了其中大概内容,花时间看视频巩固一下,就去b站看了尚硅 ...

  6. java家庭收支记账软件

    说明: 这篇文章主要运用了一些java基础知识的一个综合运用 主要涉及以下知识点:  变量的定义  基本数据类型的使用  循环语句  分支语句  方法声明.调用和返回值的接收  简单的屏幕 ...

  7. Java项目一(案例):家庭收支记账软件

    Java项目一(案例):家庭收支记账软件 项目概述 软件功能 项目说明 涉及Java知识点 软件需求说明 程序代码示例 FamilyAccount.class文件 自定义Utility.class工具 ...

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

    4.请开发一个家庭收支记账软件 界面及操作过程如下所示: -----------------家庭收支记账软件----------------- 1 收支明细 2 登记收入 3 登记支出 4 退 出 请 ...

  9. 用Java写一个家庭收支记账软件

    需要的内容有:收支明细.登记收入.登记支出和退出四个模块.并且能进入每个功能里面. 最好用的方式是用数组实现这个软件,可以是二维数组,也可以是一维数组,直接附上源码. import java.util ...

最新文章

  1. matlab里1stopt,请帮忙运行下1stopt 程序?(MATLAB没有解出结果)
  2. ansible2.4 api调用
  3. StringBuilder 、StringBuffer 、 String
  4. 音视频技术开发周刊 82期
  5. linux下clone一直运行,Linux中vgimportclone命令起什么作用呢?
  6. Random Forest 资源汇总(待续)
  7. 如何使用Apache Camel,Quarkus和GraalVM快速运行100个骆驼
  8. css z-index
  9. MicroPython (一)点亮我的Led
  10. Gartner发布2020年十大战略科技发展趋势
  11. 2021届安徽高考成绩查询,安徽2021年高考成绩什么时候公布
  12. eos 源代码学习笔记一
  13. 《HALCON机器视觉与算法原理编程实践》第1章 机器视觉概述-学习笔记
  14. B2B网站平台建设:优势、功能、模块三大方向解析
  15. 【C语言】如何得出各种数据类型所占内存空间
  16. Django - installing mysqlclient error: mysqlclient 1.4.0 or newer is required; you have 0.9.3
  17. 不管发生什么事,最重要的是拥有乐观积极的心态,困难总会过去的。
  18. Standard EVB硬件开发指南(1)——LCD接口电路
  19. 分享一开源的闭环步进电机控制器
  20. Tkinter 库---python小应用 贷款利息计算器

热门文章

  1. 【温故而知新】JavaWEB回顾(八)
  2. 闲云野鹤:吃鸡(三)之场景制作:制作毒圈
  3. cpu、内存、磁盘、操作系统的关系
  4. rk3066 android4.4,Rooting the Cube U30GT rk3066 android tablet
  5. 支付宝小程序JS省市区三级联动
  6. 解决Macm苹果笔记本电脑白屏
  7. MySql ORDER BY排序用法
  8. 适合学生不想上学的请假理由(17个)
  9. Apache JMeter安装
  10. Error:Execution failed for task ':recordlib:lint'. Lint found errors in the project; aborting buil