当前位置: 首页 > news >正文

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嵌入 好处&#xff1a;简单&#xff0c;代码量少&#xff0c;功能齐全 缺点&#xff1a;有固定样式&#xff0c;难以修改&#xff0c;不可定制 <embed class"embedPdf" :src"pdfurl" type"application/pdf">2.使用vue-pdf-e…...

中文编程开发语言工具系统化教程初级1上线

中文编程系统化教程初级1 学习编程捷径&#xff1a;&#xff08;不论是正在学习编程的大学生&#xff0c;还是IT人士或者是编程爱好者&#xff0c;在学习编程的过程中用正确的学习方法 可以达到事半功倍的效果。对于初学者&#xff0c;可以通过下面的方法学习编程&#xff0c;…...

零售数据分析模板分享(通用型)

零售数据来源多&#xff0c;数据量大&#xff0c;导致数据的清洗整理工作量大&#xff0c;由于零售的特殊性&#xff0c;其指标计算组合更是多变&#xff0c;进一步导致了零售数据分析工作量激增&#xff0c;往往很难及时分析数据&#xff0c;发现问题。那怎么办&#xff1f;可…...

Spring Cloud之微服务

目录 微服务 微服务架构 微服务架构与单体架构 特点 框架 总结 SpringCloud 常用组件 与SpringBoot关系 版本 微服务 微服务&#xff1a;从字面上理解即&#xff1a;微小的服务&#xff1b; 微小&#xff1a;微服务体积小&#xff0c;复杂度低&#xff0c;一个微服…...

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.当前…...

微信小程序投票管理系统:打造智能、便捷的投票体验

前言 随着社交网络的兴起和移动互联网的普及&#xff0c;人们对于参与和表达意见的需求越来越强烈。在这个背景下&#xff0c;微信小程序投票管理系统应运而生。它为用户提供了一个智能、便捷的投票平台&#xff0c;使用户可以轻松创建和参与各种类型的投票活动。本文将详细介…...

【算法训练-动态规划 五】【二维DP问题】编辑距离

废话不多说&#xff0c;喊一句号子鼓励自己&#xff1a;程序员永不失业&#xff0c;程序员走向架构&#xff01;本篇Blog的主题是【动态规划】&#xff0c;使用【数组】这个基本的数据结构来实现&#xff0c;这个高频题的站点是&#xff1a;CodeTop&#xff0c;筛选条件为&…...

Windows电脑如何录制电脑桌面?

如果你使用的电脑是Windows系统&#xff0c;那你是不是想知道如何在Windows电脑上录制电脑桌面&#xff1f; 本文以win10为例&#xff0c;好消息是&#xff0c;Windows 10电脑自带录屏工具&#xff0c;你可以直接使用此录屏工具轻松录制视频&#xff0c;而无需下载其他第三方软…...

ubuntu18.04双系统安装(2023最新最详细)以及解决重启后发现进不了Ubuntu问题

目录 一.简介 二.安装教程 1.首先确定了电脑的引导格式是UEFIGPT还是BIOSMBR 2. 使用Windows磁盘管理划分足够的磁盘空间 3. 开始安装 三.重启后发现自动进入WIN10系统了&#xff0c;进不了Ubuntu&#xff1f; 一.简介 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数据库快速开发文档&#xff08;74&…...

2 第一个Go程序

概述 在上一节的内容中&#xff0c;我们介绍了Go的前世今生&#xff0c;包括&#xff1a;Go的诞生、发展历程、特性和应用领域。从本节开始&#xff0c;我们将正式学习Go语言。Go语言是一种编译型语言&#xff0c;也就是说&#xff0c;Go语言在运行之前需要先进行编译&#xff…...

Leetcode—2678.老人的数目【简单】

2023每日刷题&#xff08;八&#xff09; 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 原因&#xff1a; .sh文件是在windows系统编写的&#xff0c;在linux执行就有问题 解决过程 转化下格式执行如下命令 # dos2unix app.sh 结果bash: dos2unix: command not …...

Spring Cloud之服务注册与发现(Eureka)

目录 Eureka 介绍 角色 实现流程 单机构建 注册中心 服务提供者 服务消费者 集群搭建 注册中心 服务提供者 自我保护机制 原理分析 Eureka 介绍 Eureka是spring cloud中的一个负责服务注册与发现的组件&#xff0c;本身是基于REST的服务&#xff0c;同时还提供了…...

Rust-后端服务调试入坑记

这篇文章收录于Rust 实战专栏。这个专栏中的相关代码来自于我开发的笔记系统。它启动于是2023年的9月14日。相关技术栈目前包括&#xff1a;Rust&#xff0c;Javascript。关注我&#xff0c;我会通过这个项目的开发给大家带来相关实战技术的分享。 如果你关注过我的Rust 实战里…...

Flask四种配置方式

Flask是一个轻量级的Python Web框架&#xff0c;被广泛应用于Web开发中。Flask提供了多种配置方式&#xff0c;可以根据不同的需求和场景进行选择。本篇博客将介绍Flask的几种配置方式&#xff0c;并提供相关代码示例。 Flask应用程序的配置对象 在Flask中&#xff0c;应用程序…...

基于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技术可行性&#xff1a;…...

使用Vscode创建一个C_Hello程序

Vscode用来学习C语言语法确实很方便。问题是安装好了&#xff0c;不会用&#xff0c;或编译失败&#xff0c;也是常有的事情&#xff0c;其中一个原因就是不会创建工作区。下面介绍使用Vscode创建一个C语言工作区。有时候看着很简单&#xff0c;时间久了&#xff0c;我竟然忘记…...

AI驱动开发:在快马平台上让AI模型协作构建你的智能体框架

今天想和大家分享一个最近在InsCode(快马)平台上实践的AI辅助开发项目——构建一个用于代码审查的智能体框架。这个框架特别适合在快马这样的AI开发平台上实现&#xff0c;因为可以直接调用平台内置的多种AI模型来完成智能体之间的协作。 框架设计思路 整个智能体框架由三个核…...

提升嵌入式开发效率:用快马平台一键生成串口通信等常用模块代码

作为一名嵌入式开发者&#xff0c;我经常需要和串口通信打交道。无论是调试信息输出、设备间通信还是固件升级&#xff0c;UART都是最常用的外设之一。但每次新项目都要重新写一遍串口初始化、中断处理这些重复性代码&#xff0c;实在有点浪费时间。最近发现InsCode(快马)平台能…...

Keil中内存概念:Flash、SRAM、RO、RW、ZI、.data、.bss、heap、stack、MAP文件

此文章转载于微信公众号&#xff1a;嵌入式电子学习&#xff0c;只作为笔记备忘录使用 内存属性 理解Keil MDK&#xff08;或ARM编译器&#xff09;中关于程序内存布局的一些基本概念&#xff08;RO、RW、ZI和.data、.bss、heap、stack、Flash、SRAM&#xff09;。这些概念对…...

本地化AI字幕解决方案:Qwen3-ForcedAligner支持多格式音频

本地化AI字幕解决方案&#xff1a;Qwen3-ForcedAligner支持多格式音频 1. 引言&#xff1a;本地化字幕生成的新选择 在视频内容创作和多媒体处理领域&#xff0c;字幕生成一直是个耗时费力的工作。传统手动添加字幕不仅效率低下&#xff0c;时间轴对齐的精度也难以保证。Qwen…...

互联网大厂Java面试场景深度剖析:核心技术栈与代码案例实录

互联网大厂Java面试场景深度剖析&#xff1a;核心技术栈与代码案例实录 在互联网大厂面试Java岗位&#xff0c;除了扎实的技术基础&#xff0c;还离不开对核心技术栈的全方位掌握。本文结合真实对话场景和代码案例&#xff0c;为求职者深度剖析面试流程与思路。 面试场景趣味对…...

革新性百度网盘加速方案:BaiduPCS-Web与KinhDown技术突破与实践指南

革新性百度网盘加速方案&#xff1a;BaiduPCS-Web与KinhDown技术突破与实践指南 【免费下载链接】baidupcs-web 项目地址: https://gitcode.com/gh_mirrors/ba/baidupcs-web 在数字化时代&#xff0c;百度网盘作为国内领先的云存储服务&#xff0c;却因对免费用户实施严…...

终极指南:在Windows上完美重现Mac触控板体验的完整解决方案

终极指南&#xff1a;在Windows上完美重现Mac触控板体验的完整解决方案 【免费下载链接】mac-precision-touchpad Windows Precision Touchpad Driver Implementation for Apple MacBook / Magic Trackpad 项目地址: https://gitcode.com/gh_mirrors/ma/mac-precision-touchp…...

新手福音:在快马平台用openclaw启动项目迈出机器人开发第一步

作为一名刚接触机器人开发的新手&#xff0c;第一次听说openclaw启动项目时&#xff0c;我完全不知道从何入手。机械爪控制、PWM信号、硬件通信这些术语听起来就让人头大。好在发现了InsCode(快马)平台&#xff0c;它帮我用最直观的方式理解了整个流程。 项目框架搭建 平台提供…...

PowerToys中文版:三步搞定Windows效率工具的完全汉化体验

PowerToys中文版&#xff1a;三步搞定Windows效率工具的完全汉化体验 【免费下载链接】PowerToys-CN PowerToys Simplified Chinese Translation 微软增强工具箱 自制汉化 项目地址: https://gitcode.com/gh_mirrors/po/PowerToys-CN 你是否曾经因为PowerToys的英文界面…...

Calibre run LVS 中V2LVS tools (Verilog 转 SPICE 网表工具)(20-2)

V2LVS(Verilog to SPICE for LVS)是一个用于将 Verilog 设计网表转换为 SPICE 格式,以便进行版图与原理图一致性检查(LVS)的工具。其 Tcl 接口提供了高度的可编程性和灵活性,是现代复杂设计流程中的关键组件。 0. 核心概念与基础 以下声明类型对 V2LVS 有效:input、o…...