java 簡單零錢通

目標

面向過程版

代碼

package new_pluse;import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;public class change_common{public static void main(String arg[]){//定義相關變量Scanner scanner = new Scanner(System.in);String key="";String detaile="1 ==============零錢通明細============";boolean loop=true;double money=0;double balance=0;Date date=null;SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm");//格式化信息do {System.out.println("===========零錢通菜單==========");System.out.println("\t\t\t1 零錢通明細");System.out.println("\t\t\t2 收益入賬");System.out.println("\t\t\t3 消費");System.out.println("\t\t\t4 退	出");System.out.println("請選擇(1-4)");key=scanner.next();switch (key) {case "1": System.out.println(detaile);break;case "2":  System.out.println("收益為多少");money=scanner.nextDouble();//money的值范圍應該校驗balance+=money;//拼接收益入賬信息date= new Date();//獲取當前日期detaile+="\n收益入賬\t"+money+"\t"+sdf.format(date)+"\t"+balance;//拼接信息System.out.println(detaile);if (money<0) {System.out.println("\n輸入的金額應該大于0\n");break;}break;		case "3": System.out.println("3 消費金額");money=scanner.nextDouble();if (money<0||money>balance) {System.out.println( "\n你消費的金額應該在0--"+balance);break;}System.out.println("消費說明");String note=scanner.next();balance-=money;detaile+="\n"+note+"\t"+money+"\t"+sdf.format(date)+"\t"+balance;//拼接信息break;case "4": String choice="";while(true) {System.out.println("你確定要退出嗎 y/n");choice=scanner.next();if ("y".equals(choice)||"n".equals(choice)) {break;}}//判斷是不是y或者n//在用戶退出后判斷y或Nif (choice.equals("y")) {loop=false;//退出}//看要不要退出System.out.println("4 退出");break;default:}}while (loop);System.out.println("========退出了零錢通項目=========");}}

知識

  1. 運用do? while語句實現整個主體循環
  2. 運用switch語句來進行選擇不同功能
  3. 運用if語句進行金錢的邏輯判斷

面對過程

就是每一個類實現一個功能? ? ?代碼

package new_pluse;import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;public class oppo_change {Scanner scanner = new Scanner(System.in);String key="";String detaile=" ==============零錢通明細============";boolean loop=true;double money=0;double balance=0;Date date=null;SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm");//格式化信息oppopublic void mainmenu() {do {System.out.println("===========零錢通菜單==========");System.out.println("\t\t\t1 零錢通明細");System.out.println("\t\t\t2 收益入賬");System.out.println("\t\t\t3 消費");System.out.println("\t\t\t4 退	出");System.out.println("請選擇(1-4)");key=scanner.next();switch (key) {case "1":this.detail();break;case "2":this.income();
//			qpp.income(scanner, money, balance, detaile, sdf, date);break;case "3":this.consum();break;case "4":this.goout();break;}} while (loop);}public void detail() {System.out.println(detaile);}public void income() {System.out.println("收益為多少");money=scanner.nextDouble();if (money<0) {System.out.println("\n輸入的金額應該大于0\n");return;}//money的值范圍應該校驗balance+=money;//拼接收益入賬信息date= new Date();//獲取當前日期detaile+="\n收益入賬\t"+money+"\t"+sdf.format(date)+"\t"+balance;//拼接信息System.out.println(detaile);}public void consum(){System.out.println("3 消費金額");money=scanner.nextDouble();if (money<0||money>balance) {System.out.println( "\n你消費的金額應該在0--"+balance);return;}System.out.println("消費說明");String note=scanner.next();balance-=money;detaile+="\n"+note+"\t"+money+"\t"+sdf.format(date)+"\t"+balance;//拼接信息System.out.println(detaile);//		break;}public void goout() {String choice="";while(true) {System.out.println("你確定要退出嗎 y/n");choice=scanner.next();if ("y".equals(choice)||"n".equals(choice)) {break;}}//判斷是不是y或者n//在用戶退出后判斷y或Nif (choice.equals("y")) {loop=false;//退出}//看要不要退出System.out.println("4 退出");return;}}
/*package new_pluse;import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;public class change_common{public static void main(String arg[]){//定義相關變量Scanner scanner = new Scanner(System.in);String key="";String detaile="1 ==============零錢通明細============";boolean loop=true;double money=0;double balance=0;Date date=null;SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm");//格式化信息do {System.out.println("===========零錢通菜單==========");System.out.println("\t\t\t1 零錢通明細");System.out.println("\t\t\t2 收益入賬");System.out.println("\t\t\t3 消費");System.out.println("\t\t\t4 退	出");System.out.println("請選擇(1-4)");key=scanner.next();switch (key) {case "1": System.out.println(detaile);break;case "2":  System.out.println("收益為多少");money=scanner.nextDouble();//money的值范圍應該校驗balance+=money;//拼接收益入賬信息date= new Date();//獲取當前日期detaile+="\n收益入賬\t"+money+"\t"+sdf.format(date)+"\t"+balance;//拼接信息System.out.println(detaile);if (money<0) {System.out.println("\n輸入的金額應該大于0\n");break;}break;		case "3": System.out.println("3 消費金額");money=scanner.nextDouble();if (money<0||money>balance) {System.out.println( "\n你消費的金額應該在0--"+balance);break;}System.out.println("消費說明");String note=scanner.next();balance-=money;detaile+="\n"+note+"\t"+money+"\t"+sdf.format(date)+"\t"+balance;//拼接信息break;case "4": String choice="";while(true) {System.out.println("你確定要退出嗎 y/n");choice=scanner.next();if ("y".equals(choice)||"n".equals(choice)) {break;}}//判斷是不是y或者n//在用戶退出后判斷y或Nif (choice.equals("y")) {loop=false;//退出}//看要不要退出System.out.println("4 退出");break;default:}}while (loop);System.out.println("========退出了零錢通項目=========");}}*/

使用一個菜單類menue

	public void mainmenu() {do {System.out.println("===========零錢通菜單==========");System.out.println("\t\t\t1 零錢通明細");System.out.println("\t\t\t2 收益入賬");System.out.println("\t\t\t3 消費");System.out.println("\t\t\t4 退	出");System.out.println("請選擇(1-4)");key=scanner.next();switch (key) {case "1":this.detail();break;case "2":this.income();
//			qpp.income(scanner, money, balance, detaile, sdf, date);break;case "3":this.consum();break;case "4":this.goout();break;}} while (loop);}

來模仿每個行為

然后分別用方法構建每個行為 如detail,consum,goout等

public void detail() {System.out.println(detaile);}public void income() {System.out.println("收益為多少");money=scanner.nextDouble();if (money<0) {System.out.println("\n輸入的金額應該大于0\n");return;}//money的值范圍應該校驗balance+=money;//拼接收益入賬信息date= new Date();//獲取當前日期detaile+="\n收益入賬\t"+money+"\t"+sdf.format(date)+"\t"+balance;//拼接信息System.out.println(detaile);}public void consum(){System.out.println("3 消費金額");money=scanner.nextDouble();if (money<0||money>balance) {System.out.println( "\n你消費的金額應該在0--"+balance);return;}System.out.println("消費說明");String note=scanner.next();balance-=money;detaile+="\n"+note+"\t"+money+"\t"+sdf.format(date)+"\t"+balance;//拼接信息System.out.println(detaile);//		break;}public void goout() {String choice="";while(true) {System.out.println("你確定要退出嗎 y/n");choice=scanner.next();if ("y".equals(choice)||"n".equals(choice)) {break;}}//判斷是不是y或者n//在用戶退出后判斷y或Nif (choice.equals("y")) {loop=false;//退出}//看要不要退出System.out.println("4 退出");return;}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/36385.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/36385.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/36385.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【深度學習】機器學習基礎

機器學習就是讓機器具備找一個函數的能力 帶有未知的參數的函數稱為模型 通常一個模型的修改&#xff0c;往往來自于對這個問題的理解&#xff0c;即領域知識。 損失函數 平均絕對誤差&#xff08;Mean Absolute Error&#xff0c;MAE&#xff09; 均方誤差&#xff08;Mea…

全面解讀OA系統:功能、價值及應用

反復溝通、來回跑腿&#xff0c;還易出錯&#xff1b; 紙筆記錄、excel統計&#xff0c;效率低耽誤事&#xff1b; 檔案、物資&#xff0c;查不清記錄、看不了實時&#xff1b; 部門各做各的、各管各的&#xff0c;溝通配合難…… 你有沒有經歷過諸如上述的繁瑣辦公流程&am…

打包下載怎么實現?

down_zbUploadClearfile({ //http接口 name:1 time:7, }).then(async (res) > { if (res) { this.selectData []; const zip new JSZip(); zip.generateAsync({ type: "object" }).then(() > { const downloadUrl window.URL.createObjectURL(res); …

Python中使用MySQL模糊查詢的方法

1.方法一&#xff1a;使用pymysql庫的方法 當在Python中使用MySQL進行模糊查詢時&#xff0c;我們通常會使用pymysql或mysql-connector-python這樣的庫來連接MySQL數據庫并執行查詢。以下是一個使用pymysql進行模糊查詢的詳細示例&#xff0c;包括安裝庫、連接數據庫、執行查詢…

MSA 助力實驗室測量更穩定、更準確

在汽車制造、石油化工、電子制造等行業,產品的質量和性能需要通過準確的測量來保證。但是由于測量設備的誤差、操作人員的主觀影響以及環境條件的干擾等因素會導致測量系統出現各種問題,且這些問題會導致測量結果不準確,從而影響產品質量。 隨著工業信息化的迅速發展, 各行業對…

松下的臺燈值得入手嗎?書客、飛利浦熱門品牌橫評分享!

自從兒子步入小學&#xff0c;他埋首于書桌前的時光愈發冗長&#xff0c;很欣慰他能夠認真專心學習&#xff0c;卻也隱隱擔憂他的視力健康。在了解視力健康中發現長時間在過暗或過亮的光線環境下學習&#xff0c;會導致瞳孔頻繁地收縮與擴張&#xff0c;極易引發視覺疲勞。更令…

Python 基礎:用 json 模塊存儲和讀取數據

目錄 一、用 json 存儲數據二、用 json 讀取數據 遇到看不明白的地方&#xff0c;歡迎在評論中留言吶&#xff0c;一起討論&#xff0c;一起進步&#xff01; 本文參考&#xff1a;《Python編程&#xff1a;從入門到實踐&#xff08;第2版&#xff09;》 用戶關閉程序時&#…

HTML5 WebSocket:實時通信的新篇章

隨著互聯網技術的飛速發展&#xff0c;實時交互成為現代Web應用不可或缺的一部分。在這一背景下&#xff0c;HTML5引入了WebSocket協議&#xff0c;徹底改變了傳統的客戶端與服務器之間的通信方式&#xff0c;為開發者提供了一種高效、全雙工、低延遲的數據傳輸通道。本文將深入…

構建LangChain應用程序的示例代碼:45、如何利用大型語言模型(LLMs)和 Python 庫 SymPy 進行符號數學計算的教程

這個文件是一個關于如何使用大型語言模型和 Python 進行符號數學計算的示例。它主要展示了如何求解導數、積分、線性方程和微分方程。底層技術棧包括 SymPy&#xff0c;一個 Python 的符號數學庫&#xff0c;以及 OpenAI 的 API&#xff0c;用于生成確定性的結果。 LLM 符號數…

無門檻代理SSL證書入門指南

隨著網絡安全問題日益凸顯&#xff0c;SSL證書作為保障網絡數據傳輸安全的重要手段&#xff0c;其市場需求也在持續增長。因此&#xff0c;成為SSL證書代理不僅具有巨大的商業價值&#xff0c;更是提升網絡安全保障能力的關鍵步驟。本文將為您介紹如何快速無門檻代理SSL證書的方…

GMSB文章六:微生物SCFA關聯分析

歡迎大家關注全網生信學習者系列&#xff1a; WX公zhong號&#xff1a;生信學習者Xiao hong書&#xff1a;生信學習者知hu&#xff1a;生信學習者CDSN&#xff1a;生信學習者2 介紹 微生物短鏈脂肪酸&#xff08;SCFAs&#xff09;是由腸道微生物發酵膳食纖維、抗性淀粉、低…

AI寫作助力:如何用AI降重工具快速提升論文原創性?

高查重率是許多畢業生的困擾。通常&#xff0c;高查重率源于過度引用未經修改的參考資料和格式錯誤。傳統的降重方法&#xff0c;如修改文本和增添原創內容&#xff0c;雖必要但耗時且成效不一。 鑒于此&#xff0c;應用AI工具進行AIGC降重成為了一個高效的解決方案。這些工具…

抖音集成:通過MessageBox引領數字化營銷新潮流

抖音集成&#xff1a;通過MessageBox引領數字化營銷新潮流 在數字化營銷的大潮中&#xff0c;企業需要不斷探索新的方式來優化其營銷策略&#xff0c;以抓住更多的市場機會。抖音作為一款全球知名的短視頻社交平臺&#xff0c;憑借其龐大的用戶群體和高度互動的特性&#xff0…

v1.0.4優雅草超級站長工具開發進度更新·增加vip兌換功能·增加每個頁面批量查詢和清空功能

https://doc.youyacao.com/9/2157 v1.0.4優雅草超級站長工具開發進度更新增加vip兌換功能增加每個頁面批量查詢和清空功能 演示地址-可測試 https://test2.youyacao.com 介紹 本產品是一款針對站長使用的工具&#xff0c;針對網站域名的多維信息查詢工具&#xff0c;本產品…

OpenAI推遲ChatGPT高級語音模式發布!谷歌將推出明星網紅AI聊天機器人|AI日報

文章推薦 時序預測雙飛輪&#xff0c;全面超越Transformer&#xff0c;純MLP模型實現性能效能齊飛 OpenAI將終止對我國提供API服務&#xff0c;國內大模型將迎來“六小強”格局&#xff01;&#xff5c;AI日報 推遲ChatGPT高級語音模式發布&#xff01;OpenAI將計劃在秋季向…

elasticsearch重置密碼

0 案例背景 Elasticsearch三臺集群環境&#xff0c;對外端口為6200&#xff0c;忘記elasticsearch密碼&#xff0c;進行重置操作 注&#xff1a;若無特殊說明&#xff0c;三臺服務器均需進行處理操作 1 停止es /rpa/bin/elasticsearch.sh stop 檢查狀態 ps -ef|grep elast…

如何在Spring Boot應用中集成MongoDB數據庫

如何在Spring Boot應用中集成MongoDB數據庫 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01; 在現代應用開發中&#xff0c;數據庫是存儲和管理數據的核心。Mon…

視頻監控管理平臺LntonCVS智能視頻監控平臺系統詳細介紹

安防視頻監控平臺LntonCVS以其卓越的靈活性和便捷的部署特性在眾多同類產品中脫穎而出。它不僅支持多種主流標準協議&#xff0c;如國標GB28181、RTSP/Onvif、RTMP等&#xff0c;還兼容了海康Ehome、海大宇等廠家的私有協議和SDK接入&#xff0c;為用戶提供了更加豐富的選擇。 …

Android 簡單的so層逆向

前言 最近搞了一下安卓。簡單學習記錄一下。 目標程序&#xff1a; xiao shui mian 也就是某個參數的逆向 準備環境 安卓機scrcpyadbfrida解包軟件&#xff08;不列舉了&#xff09; 這種環境安裝這里就不多說了。教程也很多。 參數逆向分析 先抓包看看參數 這里我使用…

【仿真建模-anylogic】ViewArea解析

Author&#xff1a;趙志乾 Date&#xff1a;2024-06-27 Declaration&#xff1a;All Right Reserved&#xff01;&#xff01;&#xff01; 1. 應用場景 view area又叫視圖區域&#xff0c;其作用是在presentation中標記一塊區域&#xff0c;便于動畫演示過程中快速切換可視區…