JAVA实现收支记账项目

初学java两周,现在实现一个基于文本的家庭记账系统。适合初学者

目 标

  1. 模拟实现一个基于文本界面的《家庭记账软件》
  2. 掌握初步的编程技巧和调试技巧
  3. 灵活运用基础知识

需求说明

  1. 该软件能够记录家庭的收入、支出,并能够打印收支明细表
  2. 查询收支明细(模块1)时,
    将显示所有的收入、支出名细列表
  3. 每次登记收入(模块2)后,
    收入的金额应累加到基本金上,并记录本次收入明细,
    以便后续的查询。。
  4. 每次登记支出(模块3)后,
    支出的金额应从基本金中扣除,并记
    录本次支出明细,以便后续的查询。
  5. 退出模块(模块4)
    运用return结束循环。
  6. 家庭起始的生活基本金为用户输入

注意事项

  1. 输入有可能输入金额的时候输错,输成字符串类型,会导致整个项目直接报错,不友好,需要克服此问题。
  2. 项目输入收支条数需要多条,注意上限定义大一点。

项目流程

流程图、

在这里插入图片描述
模拟实现基于文本界面的《家庭记账软件》
项目采用分级菜单方式。

用户定义定义初始家庭的金额

在这里插入图片描述

System.out.println("小金库里面还有多少钱?");
        int principal=sc.nextInt();//principal本金

主菜单如下:

在这里插入图片描述
相关代码:

 private static void use() {
   
        System.out.println("-------------------家庭收支记账软件---------------------\n");
        System.out.println("                    1.收支明细");
        System.out.println("                    2.登记收入");
        System.out.println("                    3.登记支出");
        System.out.println("                    4.退    出\n");
        System.out.print("请选择(1-4):");
    }
模块1----收支明细

初始为空的,要过滤掉空行,不如会直接输出全部的空行。
输入的时候也要注意输入是否为数值。不然会报红,基于此写入一个判断方法

 public static int readMenuSelection() {
   
        char c;
        for (; ; ) {
   //死循环,不对就一直输入
            String str = readKeyBoard(1);//readKeyBoard(1)为后续定义的一个输入方法,判断输入字符是否符合条件
            c = str.charAt(0);
            if (c != '1' && c != '2' && c != '3' && c != '4') {
   
                System.out.print("选择错误,请重新输入:");
            } else break;
        }
        int n;//定义一个整数
        n = (char)c;//强制类型转化
        return n-48;//n=c,c的Ascll码为49 转化为10进制1。返回n-48
    }

行数也要设置高一点,已免出现BUG。
运用for循环遍历输出

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\t"+arr[j][3]);
                        }

                    }
模块2-----收入登记

在用户输入有可能输入金额的时候输错,输成字符串类型,会导致整个项目直接报错,结束项目,导致前面记录直接全部消失,客服此问题我们就写入方法readKeyBoard(int limit)

private static String readKeyBoard(int limit) {
   
        String line = "";
        Scanner scanner = new Scanner(System.in);
        scanner.hasNext(
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
财务记账管理系统是一个帮助企业和个人进行财务管理的工具。它包含了用户管理、收入支出记录、报表生成等功能。使用Java编程语言,采用Git作为版本控制系统进行开源项目的开发。 该财务记账管理系统是为了解决财务管理过程中的问题而开发的。通过收入支出记录功能,用户可以方便地记录每一笔收入和支出,并进行分类和统计。同时,该系统还提供了报表生成功能,能够根据用户的需求生成各种财务报表,如收支明细表、报销报表等。这些报表可以帮助用户更好地了解财务状况,做出合理的决策。 在项目的开发过程中,采用Java编程语言是因为Java具有良好的跨平台性和稳定性。由于财务管理系统通常需要长期运行并存储大量数据,所以Java的可靠性和性能非常重要。 Git作为版本控制系统能够帮助开发团队有效地管理项目代码。通过Git,开发人员可以方便地追踪和管理代码的修改,保障代码的质量和稳定性。同时,Git还提供了分支管理功能,方便开发人员并行工作和合并代码。 采用开源项目的方式进行开发,能够吸引更多的开发者参与项目的维护和改进。这样可以扩大项目的影响力和用户基础,增加代码的可靠性和安全性。 总之,财务记账管理系统是一个使用Java编程语言,采用Git作为版本控制系统的开源项目。该项目旨在提供一个功能完善、易于使用的财务管理工具,帮助用户更好地管理和掌控自己的财务状况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值