【Java学习笔记】之家庭账目管理系统
生活随笔
收集整理的這篇文章主要介紹了
【Java学习笔记】之家庭账目管理系统
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
提示:本文為博主學(xué)習(xí)筆記,部分代碼來源網(wǎng)絡(luò),如有錯(cuò)誤,懇請(qǐng)斧正!!!
文章目錄
- 前言
- 一、Utility類
- 二、FamilyAccount類
- 總結(jié)
前言
大一學(xué)習(xí)了面向過程開發(fā)的C語言,總是感覺不太夠,于是暑假開始學(xué)習(xí)面向?qū)ο蟮腏AVA語言,開爪!
博主跟的尚硅谷的宋紅康老師學(xué)習(xí),他講的實(shí)在太細(xì)了!!!于是我五天看了170多集,由于之前有一些C語言語法基礎(chǔ),所以看這個(gè)前期就覺得容易一些。首先寫的是第一個(gè)工程家庭賬目管理系統(tǒng)。
以下是本篇文章正文內(nèi)容,下面案例可供參考
對(duì)代碼的解析已經(jīng)寫入注釋中!
一、Utility類
import java.util.Scanner;class Utility{//創(chuàng)建類private static Scanner scanner = new Scanner(System.in);//創(chuàng)建對(duì)象//界面菜單的選擇public static char readMenuSelection(){//創(chuàng)建方法char c;//局部變量for (; ;){String str = readKeyBoard(1);c = str.charAt(0);if (c != '1' && c != '2' && c != '3' && c != '4'){System.out.print("選擇錯(cuò)誤,請(qǐng)重新輸入:");}elsebreak;}return c;}//用于收入和支出金額的輸入public static int readNumber(){int n;for(; ;){String str = readKeyBoard(4);//從鍵盤讀取數(shù)的位數(shù)try{n = Integer.parseInt(str);break;}catch(NumberFormatException e){System.out.print("數(shù)字輸入錯(cuò)誤,請(qǐng)重新輸入:");}}return n;}//用于收入和支出的說明public static String readString(){String str = readKeyBoard(8);return str;}//用于確認(rèn)選擇的輸入,從鍵盤度Y和Npublic 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("選擇錯(cuò)誤,請(qǐng)重新輸入:");}}return c;}public static String readKeyBoard(int n){Scanner scanner = new Scanner(System.in);String str = scanner.next();return str;} }二、FamilyAccount類
class FamilyAccount{public static void main(String[] args){boolean isFlag = true;//定義一個(gè)布爾型變量,用作系統(tǒng)的循環(huán)和終止String details = "收支\t賬戶金額\t\t收支金額\t\t說 明\n";//表頭int balance = 1000;//初始賬目余額while(isFlag){//進(jìn)入一個(gè)死循環(huán),除非改變isFlag的值,否則無法退出系統(tǒng)System.out.println("----------------家庭收支記賬軟件----------------\n");//該系統(tǒng)的目錄頁System.out.println(" 1.收支明細(xì)");System.out.println(" 2.登記收入");System.out.println(" 3.登記支出");System.out.println(" 4.退出");System.out.print(" 請(qǐng)選擇(1-4):");//獲取用戶的選擇:1-4char selection = Utility.readMenuSelection();//調(diào)用Utlity類中的readMenuSelection方法,將得到的參數(shù)賦給selectionswitch(selection) {//用戶選擇模式case '1':System.out.println("------------當(dāng)前收支明細(xì)記錄------------");System.out.println(details+"\n\n");System.out.println("-------------------------------------");break;case '2':System.out.println("本次收入金額:");int addMoney = Utility.readNumber();//同樣的調(diào)用Utility中的readNumber方法,將返回值賦給addMoney這個(gè)變量System.out.println("本次收入說明:");String addInfo = Utility.readString();balance+=addMoney;details+=("收入\t\t"+balance+"\t"+addMoney+"\t\t"+addInfo+"\n");System.out.println("當(dāng)前等級(jí)完成\n\n");break;case '3':System.out.println("本次支出金額:");int minusMoney = Utility.readNumber();System.out.println("本次支出說明:");String minusInfo = Utility.readString();if(balance>=minusMoney) {balance-=minusMoney;}details+=("收入\t"+balance+"\t\t\t"+minusMoney+"\t\t\t"+minusInfo+"\n");System.out.println("當(dāng)前登記完成\n\n");break;case '4':System.out.println("是否確認(rèn)退出(Y/N)?");char isExit = Utility.readConfirmSelection();if(isExit=='Y') {isFlag=false;}break;}}} }總結(jié)
以上是基于Java的家庭賬目管理系統(tǒng),后續(xù)會(huì)進(jìn)行優(yōu)化升級(jí),歡迎各位大佬指點(diǎn)!
總結(jié)
以上是生活随笔為你收集整理的【Java学习笔记】之家庭账目管理系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java建设银行支付_基于JAVA的建设
- 下一篇: 浅谈管理软件的功能与作用-—以Nvisu