java 家庭记账项目

编程入门 行业动态 更新时间:2024-10-12 03:28:00

java <a href=https://www.elefans.com/category/jswz/34/1765085.html style=家庭记账项目"/>

java 家庭记账项目

一、项目描述

        家庭记账软件,记录家庭收支情况。初学java项目

二、项目功能 

        1.账目记录

        2.收入情况

        3.支出情况

        4.退出

三、项目讲解

    项目地址

四、业务代码

1.引用封装类:Utility

import java.util.Scanner;public class Utility{private static Scanner scanner = new Scanner(System.in);/*** 用户菜单1-4的选择* charAt() 方法用于返回指定索引处的字符。索引范围为从 0 到 length() - 1。* */public static char readMenuSelection(){char c;for( ; ; ){String str = readKeyBoard(1);c = str.charAt(0);if (c != '1' && c != '2' && c != '3' && c != '4'){System.out.println("输入有误,请重新输入:");} else {break;}}return c;}/*** 用于收入和支出的金额设置,最大不超过4位数* */public static int readNumber(){int n;for( ; ; ){String str = readKeyBoard(4);try {n = Integer.parseInt(str);break;}catch (NumberFormatException e) {System.out.println("数字输入错误,请重新输入:");}}return n;}/*** 描述收入和支出的说明情况* */public static String readString(){String str = readKeyBoard(8);return str;}public static char readConfirmSelection(){char c;for ( ; ; ){String str = readKeyBoard(1).toUpperCase();c = str.charAt(0);if (c == 'Y' || c == 'n'){break;} else {System.out.print("选择错误,请重新输入:");}}return c;}/*** nextLine 将此扫描仪推进到当前行并返回跳过的输入。* */private static String readKeyBoard(int limit){String line = "";while (scanner.hasNext()) {line = scanner.nextLine();if (line.length() < 1 || line.length() > limit) {System.out.print("输入长度(不大于" + limit + ")错误,请重新输入:");continue;}break;}return line;}}

2.前端调用类:FamilyAccount

class FamilyAccount
{/*** 问题1:说明乱码???形式展示* */public static void main(String[] args){double balance = 10000.0; // 初始金额boolean flag = true; // 循环标志String info = ""; // 记录信息while(flag){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.print(" 请选择(1-4):");char mode = Utility.readMenuSelection();System.out.println();switch (mode){//记录case '1':System.out.println("\n-----------------当前收支明细记录-----------------");System.out.println("收支\t账户金额\t收支明细\t说明");if (info == ""){System.out.println("请先记账");break;}System.out.println(info);System.out.println("写入完成");break;//收入case '2':System.out.print("本次收入金额:");double in_moeny = Utility.readNumber();System.out.print("本次收入说明:");balance += in_moeny;String in_info = Utility.readString();info += "收入\t" + balance + " \t+" + in_moeny + "\t \t" + in_info + "\n";break;//支出case '3':System.out.print("本次支出金额:");double out_moeny = Utility.readNumber();System.out.print("本次支出说明:");balance -= out_moeny;String out_info = Utility.readString();info += "支出\t" + balance + " \t-" + out_moeny + "\t \t" + out_info + "\n";break;//退出case '4':System.out.println("确认是否退出(Y/N):");char isExit = Utility.readConfirmSelection();if(isExit == 'Y'){flag = false;}break;}}}
}

3.项目展示图片:

更多推荐

java 家庭记账项目

本文发布于:2024-02-05 09:24:59,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1674096.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:家庭   项目   java

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!