Java项目_家庭记账(简易版)
文章目录
- 简介
- 代码实现
简介
该项目主要用来练习,Java的变量,运算符,分支结构和循环结构的知识点。
程序界面如下:

登记收入

登记支出


收支明细

程序退出

代码实现
package project;import java.util.Scanner;import static java.lang.System.exit;/*** ClassName: Account* Package: project* Description: 家庭收支记账软件(简易版)** @Author: Ethan* @Create 2023/10/24 20:50* @Version 1.0*/
public class Account {public static void main(String[] args) {home();Scanner scanner = new Scanner(System.in);int btn = scanner.nextInt();String detail = "";int balance = 0;while( true ) {switch (btn) {case 1:if(detail.equals("")) {System.out.println("暂无记录!");} else {System.out.println("-------------------当前收支明细记录-------------------");System.out.println("收支\t账户金额\t收支金额\t说明");System.out.println(detail);}break;case 2:System.out.println("收入金额:");int in = scanner.nextInt();balance += in;System.out.println("收入说明:");String inExplain = scanner.next();detail += ("收入\t" + balance + "\t" + in + "\t" + inExplain + "\n");break;case 3:System.out.println("支出金额:");int out = scanner.nextInt();if( balance >= out){balance -= out;System.out.println("支出说明:");String outExplain = scanner.next();detail += ("支出\t" + balance + "\t" + out + "\t" + outExplain + "\n");} else {System.out.println("余额不足!");}break;case 4:System.out.println("确定退出吗?(Y/N)");char confirm = scanner.next().toLowerCase().charAt(0);if(confirm == 'y') {System.out.println("系统退出");exit(0);}default:System.out.println("输入有误!");}home();btn = scanner.nextInt();}}/*** @ description: 用来打印程序主界面* @ return: void无返回值*/public static void home() {System.out.println("-------------------家庭收支记账软件-------------------");System.out.println(" 1.收支明细");System.out.println(" 2.登记收入");System.out.println(" 3.登记支出");System.out.println(" 4.退出");System.out.println(" 请选择(1~4):");}
}相关文章:
Java项目_家庭记账(简易版)
文章目录 简介代码实现 简介 该项目主要用来练习,Java的变量,运算符,分支结构和循环结构的知识点。 程序界面如下: 登记收入 登记支出 收支明细 程序退出 代码实现 package project;import java.util.Scanner;import sta…...
vscode json文件添加注释报错
在vscode中创建json文件,想要注释一波时,发现报了个错:Comments are not permitted in JSON. (521),意思是JSON中不允许注释 以下为解决方法: 在vscode的右下角中找到这个,点击 在出现的弹窗中输入json wit…...
vue3移动端嵌入pdf的两种办法
1.使用embed嵌入 好处:简单,代码量少,功能齐全 缺点:有固定样式,难以修改,不可定制 <embed class"embedPdf" :src"pdfurl" type"application/pdf">2.使用vue-pdf-e…...
中文编程开发语言工具系统化教程初级1上线
中文编程系统化教程初级1 学习编程捷径:(不论是正在学习编程的大学生,还是IT人士或者是编程爱好者,在学习编程的过程中用正确的学习方法 可以达到事半功倍的效果。对于初学者,可以通过下面的方法学习编程,…...
零售数据分析模板分享(通用型)
零售数据来源多,数据量大,导致数据的清洗整理工作量大,由于零售的特殊性,其指标计算组合更是多变,进一步导致了零售数据分析工作量激增,往往很难及时分析数据,发现问题。那怎么办?可…...
Spring Cloud之微服务
目录 微服务 微服务架构 微服务架构与单体架构 特点 框架 总结 SpringCloud 常用组件 与SpringBoot关系 版本 微服务 微服务:从字面上理解即:微小的服务; 微小:微服务体积小,复杂度低,一个微服…...
Linux命令(104)之date
linux命令之date 1.date介绍 linux命令date用来设置和显示系统日期和时间 2.date用法 date [参数] date参数 参数说明-s修改并设置时间-d可以显示以前和未来的时间%H小时%M分钟%S秒%X等价于%H %M %S%F显示当前所有时间属性%Y完整年份%m月%d日%A星期的全称 3.实例 3.1.当前…...
微信小程序投票管理系统:打造智能、便捷的投票体验
前言 随着社交网络的兴起和移动互联网的普及,人们对于参与和表达意见的需求越来越强烈。在这个背景下,微信小程序投票管理系统应运而生。它为用户提供了一个智能、便捷的投票平台,使用户可以轻松创建和参与各种类型的投票活动。本文将详细介…...
【算法训练-动态规划 五】【二维DP问题】编辑距离
废话不多说,喊一句号子鼓励自己:程序员永不失业,程序员走向架构!本篇Blog的主题是【动态规划】,使用【数组】这个基本的数据结构来实现,这个高频题的站点是:CodeTop,筛选条件为&…...
Windows电脑如何录制电脑桌面?
如果你使用的电脑是Windows系统,那你是不是想知道如何在Windows电脑上录制电脑桌面? 本文以win10为例,好消息是,Windows 10电脑自带录屏工具,你可以直接使用此录屏工具轻松录制视频,而无需下载其他第三方软…...
ubuntu18.04双系统安装(2023最新最详细)以及解决重启后发现进不了Ubuntu问题
目录 一.简介 二.安装教程 1.首先确定了电脑的引导格式是UEFIGPT还是BIOSMBR 2. 使用Windows磁盘管理划分足够的磁盘空间 3. 开始安装 三.重启后发现自动进入WIN10系统了,进不了Ubuntu? 一.简介 Linux是一种自由和开放源代码的操作系统内核&#x…...
Springboot + screw 数据库快速开发文档
1、方式1 引入依赖 <dependency><groupId>cn.smallbun.screw</groupId><artifactId>screw-core</artifactId><version>1.0.5</version></dependency> /*** 文档生成 Springboot2.X screw数据库快速开发文档(74&…...
2 第一个Go程序
概述 在上一节的内容中,我们介绍了Go的前世今生,包括:Go的诞生、发展历程、特性和应用领域。从本节开始,我们将正式学习Go语言。Go语言是一种编译型语言,也就是说,Go语言在运行之前需要先进行编译ÿ…...
Leetcode—2678.老人的数目【简单】
2023每日刷题(八) Leetcode—2678.老人的数目 int countSeniors(char ** details, int detailsSize){ int ans 0; int i; int tens 0; int ones 0; for(i 0; i < detailsSize; i) { tens ((details i) 11) - ‘0’; ones ((details i) 12)…...
解决 /bin/bash^M: bad interpreter: No such file or directory
问题描述 linux 系统中知行*.sh 文件报/bin/bash^M: bad interpreter: No such file or directory 原因: .sh文件是在windows系统编写的,在linux执行就有问题 解决过程 转化下格式执行如下命令 # dos2unix app.sh 结果bash: dos2unix: command not …...
Spring Cloud之服务注册与发现(Eureka)
目录 Eureka 介绍 角色 实现流程 单机构建 注册中心 服务提供者 服务消费者 集群搭建 注册中心 服务提供者 自我保护机制 原理分析 Eureka 介绍 Eureka是spring cloud中的一个负责服务注册与发现的组件,本身是基于REST的服务,同时还提供了…...
Rust-后端服务调试入坑记
这篇文章收录于Rust 实战专栏。这个专栏中的相关代码来自于我开发的笔记系统。它启动于是2023年的9月14日。相关技术栈目前包括:Rust,Javascript。关注我,我会通过这个项目的开发给大家带来相关实战技术的分享。 如果你关注过我的Rust 实战里…...
Flask四种配置方式
Flask是一个轻量级的Python Web框架,被广泛应用于Web开发中。Flask提供了多种配置方式,可以根据不同的需求和场景进行选择。本篇博客将介绍Flask的几种配置方式,并提供相关代码示例。 Flask应用程序的配置对象 在Flask中,应用程序…...
基于nodejs+vue备忘记账系统mysql
目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…...
使用Vscode创建一个C_Hello程序
Vscode用来学习C语言语法确实很方便。问题是安装好了,不会用,或编译失败,也是常有的事情,其中一个原因就是不会创建工作区。下面介绍使用Vscode创建一个C语言工作区。有时候看着很简单,时间久了,我竟然忘记…...
8051单片机sbit位操作失效问题与volatile解决方案
1. 问题现象与背景解析在8051单片机开发中,我们经常需要对寄存器或内存中的特定位进行操作。Keil C51编译器提供了sbit关键字来实现位寻址功能,这是一种非常高效的位操作方式。但在实际开发中,不少工程师遇到过这样的困扰:明明在代…...
别再只下载不固化!紫光同创FPGA/CPLD烧录到Flash的保姆级避坑指南
紫光同创FPGA/CPLD烧录实战:从临时下载到永久固化的全流程精解 第一次成功将程序下载到紫光同创FPGA开发板时的兴奋,很快被一个残酷现实浇灭——断电重启后,所有心血归零。这个场景对许多初学者来说再熟悉不过。JTAG下载只是起点,…...
从社交网络到疾病传播:ER随机图模型在实际场景中的仿真应用指南
从社交网络到疾病传播:ER随机图模型在实际场景中的仿真应用指南 在流行病学研究中,一个关键问题是如何预测疾病在人群中的传播速度和范围。想象一下,你是一名公共卫生官员,需要评估某种新型流感在小镇上的潜在传播风险。传统方法可…...
【微信取证篇】从微信收藏文件看微信存储加密逻辑(附解密工具思路)
1. 微信收藏文件的存储结构解析 第一次打开微信收藏夹时,你可能不会想到那些随手保存的图片、视频和文档,在手机存储里竟会以三种完全不同的形态存在。作为一名长期研究移动应用数据存储的开发者,我发现微信对收藏文件的处理方式堪称"精…...
别再只用默认模型了!手把手教你用SnowNLP训练专属情感分析模型(附完整代码)
突破SnowNLP默认模型局限:打造高精度领域情感分析系统的实战指南 从"水土不服"到精准预测:为什么你需要自定义情感模型 去年夏天,我们的产品团队在分析用户反馈时遇到了一个诡异现象:明明用户留言中充斥着"卡顿严重…...
5分钟快速上手:使用免费在线EPUB编辑器制作专业电子书
5分钟快速上手:使用免费在线EPUB编辑器制作专业电子书 【免费下载链接】EPubBuilder 一款在线的epub格式书籍编辑器 项目地址: https://gitcode.com/gh_mirrors/ep/EPubBuilder 你是否梦想过出版自己的电子书,却被复杂的EPUB格式和技术门槛吓退&a…...
如何高效下载B站视频:3分钟掌握智能下载工具完整指南
如何高效下载B站视频:3分钟掌握智能下载工具完整指南 【免费下载链接】BiliDownloader BiliDownloader是一款界面精简,操作简单且高速下载的b站下载器 项目地址: https://gitcode.com/gh_mirrors/bi/BiliDownloader 你是否曾经遇到过这样的情况&a…...
手把手教你为100ASK T113-S3核心板点亮SPI屏:设备树配置、内核编译到fb-test测试
手把手教你为100ASK T113-S3核心板点亮SPI屏:设备树配置、内核编译到fb-test测试 在嵌入式Linux开发中,驱动一块SPI接口的LCD屏幕是常见的硬件交互项目。本文将基于全志T113-S3平台和100ASK核心板,详细讲解如何从零开始驱动ILI9341 SPI屏幕。…...
GANSpace核心原理揭秘:PCA在GAN激活空间中的神奇应用
GANSpace核心原理揭秘:PCA在GAN激活空间中的神奇应用 【免费下载链接】ganspace 项目地址: https://gitcode.com/gh_mirrors/ga/ganspace GANSpace是一项革命性技术,它通过主成分分析(PCA)在生成对抗网络(GAN&…...
别再被Windows权限卡脖子!用`--user`参数搞定pip安装报错(附详细排查步骤)
彻底解决Windows下Python包安装权限问题:从--user参数到环境配置全攻略 在Windows系统上进行Python开发时,许多开发者都曾遭遇过这样的尴尬时刻:当你满怀期待地输入pip install package_name准备安装一个新工具时,屏幕上却突然跳出…...
