本篇是一个java初学者写的家庭收支账本,希望对大家有用。
明确要求:
1.在这里在第一个界面它需要四个选择功能。
收支明细
登记收入
登记支出
退 出
2.每次的支出或收入都要记录,以便后续能查找。
所以在这里我们首先要思考怎么才能将这些都能在控制台输出。
我们能想到以前学过的的数组,数组可以赋值。
所以第一步我们首先定义一个数组:

public static void main(String[] args) {String[][] arr = new String[10][4];//在这里定义一个二维引用数据类型数组

其次,需要接受用户的选择,我们用Scanner来输入数据。

 Scanner sc = new Scanner(System.in);//在这里接受用户数据

在其次我们定义本金

         int ben = 10000;  //本金为10000int count = 0;

在这里我们需要编写这个账本的最顶部的文本,并进行一个死循环。为了应对错误数据(只是int类型)编写一个if判断。

while (true) {System.out.println("--------家庭收支记账软件-------- \n 1 收支明细\n 2 登记收入\n 3 登记支出\n 4 退出\n请选择1~4:");//用户选择int a = sc.nextInt();if(a !=1 && a !=2 && a != 3 && a != 4){System.out.println("输入的选项错误,请重新输入:");int b= sc.nextInt();//替换a=b;//在这里是为了防止有错误数据,只要输入的不是1~4,就会报错,重新输入,新输入的值会代替a.}

在这里当用户选择第一个选项的时候,就会输出这个收支明细表。因为String类型空值时会输出null,多以只有有数据是才会进行输出。

switch (a) {case 1:System.out.println("---------------收支明细记录表-------------------");System.out.println("收支\t\t账户总金额\t\t收支金额\t\t说   明");for (int j = 0; j < arr.length; j++) {if (arr[j][0] != null) {System.out.println(arr[j][0] + "\t\t " + arr[j][1] + "\t\t\t " + arr[j][2] + "\t\t " + arr[j][3]);}}System.out.println("-----------------------------------------------\n");break;

当用户选择第二个选项时,接受收入说明,收入金额,将收入的金额和本金相加,在这里赋值给总金额。因为定义的收入金额和本金为int类型所以这里强转。

case 2:System.out.println("请输入本次收入的说明:");String shou = sc.next();System.out.println("请输入本次收入的金额:");int num = sc.nextInt();arr[count][0] = "收入";ben += num;arr[count][1] = String.valueOf(ben);arr[count][2] = String.valueOf(num);arr[count][3] = shou;count++;System.out.println("添加成功!");break;

在这里和第二个选项相同,就是在总金额中减去支出金额。

case 3:System.out.println("请输入本次支出的说明:");String zhi = sc.next();System.out.println("请输入本次支出的金额:");int nu = sc.nextInt();arr[count][0] = "支出";ben -= nu;arr[count][1] = String.valueOf(ben);arr[count][2] = String.valueOf(nu);arr[count][3] = zhi;count++;System.out.println("添加成功!");break;

最后在这里就是编写退出程序了,return是结束当前所有程序,而break是跳出当前循环。

case 4:System.out.println("是否退出?退出填1否则2");int tui = sc.nextInt();if(tui == 1) {System.out.println("退出成功!");return;}else{break;}

初学java者写家庭收支账本相关推荐

  1. 学java用什么写比较好_学习Java需要什么基础,初学Java如何写好代码

    原标题:学习Java需要什么基础,初学Java如何写好代码 初学Java的同学时常会遇到这样的情况,跟着入门教程看过一遍,但需要自己写代码的时候却无从下手:写代码的时候时常会遇到不懂的地方,如果停下来 ...

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

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

  3. Java、JSP家庭收支管理系统

    技术:Java.JSP等 摘要: 随着计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机来解决我们生活中的实际问题了.近几年来,由于工作的忙碌与生活频率的加快,人们的相关的事务信息量 ...

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

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

  5. 基于Java基础的家庭收支记账软件

    文章目录 前言 一.前期准备 二.整体功能 三.功能模块 四.功能浅谈 1. AccountInfo 类 2.收支明细 3.登记收入/支出 4. 查询账单 五.收获 六.总结 前言 学习完Java基础 ...

  6. 初学Java必写的小程序。

    1.矩形面积,周长封装测试. /** * @author Administrator *封装好的矩形类 *自己私有的长宽属性 *开放 求面积求周长的方法 和设置长宽的方法 */ public clas ...

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

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

  8. java编写家庭收支记账程序

    一.明确需求:                                                                                              ...

  9. java编写家庭收支记录,Java家庭收支记账小项目(java基础)

    Java家庭收支记账小项目(java基础) Java家庭收支记账小项目(java基础) 需求说明: 模拟实现基于文本界面的<家庭记账软件>. 该软件能够记录家庭的收入.支出,并能够打印收支 ...

最新文章

  1. Ajax入门总结--jquery实现Ajax
  2. C和C++混合编程(__cplusplus 与 external c 的使用)
  3. Spring+Mybatis使用MapperScannerConfigurer简化配置__MapperScannerConfigurer的作用
  4. c 语言中随机数填充数组,c – 生成唯一随机数的数组
  5. Beetl学习(一)
  6. java语言生日蛋糕代码_AcWing 168. 【Java】生日蛋糕
  7. 透视Datatable
  8. PHP 单元测试问题记录
  9. 使用VBScript和ADSI
  10. 【C补充】指向指针或函数的指针
  11. 【ionic框架bug】slidebox在使用model或popover后width变为0的解决方案
  12. 如果自己配电脑电源额定瓦数过高会有什么坏处吗?
  13. 得之坦然,失之淡然,顺其自然,争其必然。真的太经典了啊!
  14. 快速余弦变换matlab,离散余弦变换 - MATLAB Simulink - MathWorks 中国
  15. 做测试8年,33岁前只想追求大厂高薪,今年只求稳定收入
  16. LT9211芯片资料分享
  17. matlab定义未知大小矩阵,MATLAB中未知长度的矩阵?
  18. DFS【深度优先搜索】的一个小小代码—破解QQ一笔画
  19. 数据结构与算法基础 基本概念
  20. dfs序+线段树 BZOJ3252 攻略

热门文章

  1. chm打开秒退_Mac_Mac电脑程序无响应怎么办?Mac程序无响应解决方法,虽然Mac电脑一向以运行稳定、 - phpStudy...
  2. 华为服务器维护客服,服务器客服
  3. 树莓派无线网络及VNC设置
  4. windows平板找回完整的电源模式,包括高性能模式
  5. docker 搭建在线vscode编辑器
  6. 亿图图示----科学与软件展示
  7. Kubeadm搭建高可用K8S(四)Dashboard安装配置
  8. 全志平台boot框架中增加设备驱动过程分析
  9. 计算机excel表格公式教程,Excel2010
  10. Linux运维工程师笔试题系列6(30题)