最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實例項目零錢通的實現(xiàn)流程

 更新時間:2022年03月04日 16:21:07   作者:笑霸final  
本篇文章為你帶來Java的一個新手實戰(zhàn)項目,是一個零錢通系統(tǒng),項目來自于B站韓順平老師,非常適合新手入門練習,感興趣的朋友快來看看吧

注意:本項目來自B站韓順平老師 點此跳轉(zhuǎn)

完整代碼請看這里:gitee

點擊這里 GitHub鏈接

如圖:

老韓思路:

(1)可以把收益入賬和消費,保存到數(shù)組中(但目前學到的數(shù)組是定長的)

(2)可以使用對象

(3)可以使用String拼接

完成收益入賬,完成功能驅(qū)動程序員增加新的變化的代碼

(1)要接收收益入賬的金額,并更新余額

(2)拼接好字符串

(3)找到時間如何輸出,并且修改其輸出格式

我用的字符串拼接

效果圖

**

一些說明

**:創(chuàng)建一個包 com.project.money.oop

然后創(chuàng)建兩個類 SmallChangeSys和SmallChangeSysOOP

SmallChangeSys 用來寫main方法代碼如下

package com.project.money.oop;

public class SmallChangeSys {
    public static void main(String[] args) {
        SmallChangeSysOOP p=new SmallChangeSysOOP();
        p.menu();
    }
}

SmallChangeSysOOP用來實現(xiàn)具體功能

代碼如下:

package com.project.money.oop;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class SmallChangeSysOOP {
    private  double in_money=0;//當前流動的錢
    private double balance=0;//余額
    private String detailed="------------零錢通明細--------------";
    private Date date = null;
    //可以用于日期格式化的
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
public void menu(){};
//1 零錢通明細
 public void detailed_(){};
 //2 收益入賬"
 public void input(){};
 //3消費
    public void output(){};

}

具體說明各個方法的作用:

public void menu()方法

public void menu(){//菜單
        boolean loop=true;
        Scanner scanner = new Scanner(System.in);
        while(loop){//循環(huán)展示菜單
            System.out.println("\n============oop零錢通菜單==============");
            System.out.println("\t\t1 零錢通明細");
            System.out.println("\t\t2 收益入賬");
            System.out.println("\t\t3 消費");
            System.out.println("\t\t4 退" + "\t" + "出");
            System.out.print("請選擇1-4:");int key= scanner.nextInt();//選擇;
            switch (key){
                case 1:detailed_();break;
                case 2:input();break;
                case 3:output();break;
                case 4:System.out.println("\t\t程序已經(jīng)退出");loop=false;break;
            }

        }
    }

void detailed_()方法

public void detailed_(){
        System.out.println(detailed);//直接輸出字符
    }

public void input()方法

public void input(){//收益入賬
        Scanner scanner = new Scanner(System.in);
        System.out.println("請輸入金額:");
        this.in_money=scanner.nextDouble();

        while(in_money<0){
            System.out.println("======輸入有誤======");
            System.out.println("是否重新輸入?Y(是)或 N(否) ");//可能點錯了不是輸入
            String in=scanner.next();//是否重新輸入
            if(in.equals("n")||in.equals("N")){
                System.out.println("返回主頁面中....");
                /*****************************************/
                try {
                    Thread.sleep( 1000 );//暫停1秒提升用戶感受
                } catch (Exception e){}
                /*******************************************/
                return;//退出輸入
            }

                System.out.println("請輸入金額:");
                this.in_money=scanner.nextDouble();
        }
        this.balance+=this.in_money;
        String beizhu="";
        date = new Date();
        System.out.println("請輸入備注:");
        beizhu=scanner.next();
        this.detailed+="\n收益入帳\t+" + this.in_money + "\t" + sdf.format(date) +
                "\t余額:" + this.balance+ "  備注:" +beizhu;
    }

**

public void output()方法

**

 public void output(){
        System.out.println("請輸入金額:");
        Scanner scanner = new Scanner(System.in);
        in_money=scanner.nextDouble();
        if(balance<in_money){
            System.out.println("余額不足,請充值");
            return;
        }
        while(in_money<0){
            System.out.println("輸入錯誤,請重輸");
            in_money=scanner.nextDouble();
            if(balance<in_money){
                System.out.println("余額不足,請充值");
                return;
            }
        }
        this.balance-=in_money;
        System.out.println("請輸入備注:");
        String beizhu=scanner.next();
        this.detailed+="\n余額支出\t-" + this.in_money + "\t" + sdf.format(date) +
                "\t余額:" + this.balance+ "  備注:" +beizhu;

    }

SmallChangeSysOOP完整代碼

package com.project.money.oop;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class SmallChangeSysOOP {
    private  double in_money=0;//當前流動的錢
    private double balance=0;//余額
    private String detailed="------------零錢通明細--------------";
    private Date date = null;
    //可以用于日期格式化的
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");

    public void menu(){//菜單
        boolean loop=true;
        Scanner scanner = new Scanner(System.in);
        while(loop){//循環(huán)展示菜單
            System.out.println("\n============oop零錢通菜單==============");
            System.out.println("\t\t1 零錢通明細");
            System.out.println("\t\t2 收益入賬");
            System.out.println("\t\t3 消費");
            System.out.println("\t\t4 退" + "\t" + "出");
            System.out.print("請選擇1-4:");int key= scanner.nextInt();//選擇;
            switch (key){
                case 1:detailed_();break;
                case 2:input();break;
                case 3:output();break;
                case 4:System.out.println("\t\t程序已經(jīng)退出");loop=false;break;
            }

        }
    }
    //1 零錢通明細
    public void detailed_(){
        System.out.println(detailed);
    }
    //2 收益入賬"
    public void input(){//收益入賬
        Scanner scanner = new Scanner(System.in);
        System.out.println("請輸入金額:");
        this.in_money=scanner.nextDouble();

        while(in_money<0){
            System.out.println("======輸入有誤======");
            System.out.println("是否重新輸入?Y(是)或 N(否) ");//可能點錯了不是輸入
            String in=scanner.next();//是否重新輸入
            if(in.equals("n")||in.equals("N")){
                System.out.println("返回主頁面中....");
                /*****************************************/
                try {
                    Thread.sleep( 1000 );//暫停1秒提升用戶感受
                } catch (Exception e){}
                /*******************************************/
                return;//退出輸入
            }

                System.out.println("請輸入金額:");
                this.in_money=scanner.nextDouble();
        }
        this.balance+=this.in_money;
        String beizhu="";
        date = new Date();
        System.out.println("請輸入備注:");
        beizhu=scanner.next();
        this.detailed+="\n收益入帳\t+" + this.in_money + "\t" + sdf.format(date) +
                "\t余額:" + this.balance+ "  備注:" +beizhu;
    }
    //3消費
    public void output(){
        System.out.println("請輸入金額:");
        Scanner scanner = new Scanner(System.in);
        in_money=scanner.nextDouble();
        if(balance<in_money){
            System.out.println("余額不足,請充值");
            return;
        }
        while(in_money<0){
            System.out.println("輸入錯誤,請重輸");
            in_money=scanner.nextDouble();
            if(balance<in_money){
                System.out.println("余額不足,請充值");
                return;
            }
        }
        this.balance-=in_money;
        System.out.println("請輸入備注:");
        String beizhu=scanner.next();
        this.detailed+="\n余額支出\t-" + this.in_money + "\t" + sdf.format(date) +
                "\t余額:" + this.balance+ "  備注:" +beizhu;

    }


}

一些圖片

到此這篇關(guān)于Java實例項目零錢通的實現(xiàn)流程的文章就介紹到這了,更多相關(guān)Java 零錢通內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java Tree結(jié)構(gòu)數(shù)據(jù)中查找匹配節(jié)點方式

    Java Tree結(jié)構(gòu)數(shù)據(jù)中查找匹配節(jié)點方式

    這篇文章主要介紹了Java Tree結(jié)構(gòu)數(shù)據(jù)中查找匹配節(jié)點方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • SpringBoot兩種方式接入DeepSeek的實現(xiàn)

    SpringBoot兩種方式接入DeepSeek的實現(xiàn)

    本文主要介紹了SpringBoot兩種方式接入DeepSeek的實現(xiàn),包括HttpClient方式和基于spring-ai-openai的方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-03-03
  • Java常見的四種負載均衡算法

    Java常見的四種負載均衡算法

    本文主要介紹了Java常見的四種負載均衡算法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05
  • 使用Spring實現(xiàn)@Value注入靜態(tài)字段

    使用Spring實現(xiàn)@Value注入靜態(tài)字段

    這篇文章主要介紹了使用Spring實現(xiàn)@Value注入靜態(tài)字段方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java后端實現(xiàn)生成驗證碼圖片的示例代碼

    Java后端實現(xiàn)生成驗證碼圖片的示例代碼

    驗證碼是一種用于驗證用戶身份或確保用戶操作安全的技術(shù)手段,通常以圖形、聲音或文字的形式出現(xiàn),本文主要介紹了如何通過java實現(xiàn)生成驗證碼圖片,需要的可以參考下
    2023-12-12
  • 剖析Java中HashMap數(shù)據(jù)結(jié)構(gòu)的源碼及其性能優(yōu)化

    剖析Java中HashMap數(shù)據(jù)結(jié)構(gòu)的源碼及其性能優(yōu)化

    這篇文章主要介紹了Java中HashMap數(shù)據(jù)結(jié)構(gòu)的源碼及其性能優(yōu)化,文中以Java 8后HashMap的性能提升來討論了HashMap的一些優(yōu)化點,需要的朋友可以參考下
    2016-05-05
  • Mybatis plus實現(xiàn)Distinct去重功能

    Mybatis plus實現(xiàn)Distinct去重功能

    這篇文章主要介紹了Mybatis plus實現(xiàn)Distinct去重功能,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • Java+Selenium設(shè)置元素等待的方法詳解

    Java+Selenium設(shè)置元素等待的方法詳解

    本文主要介紹如何使用java代碼利用Selenium操作瀏覽器,某些網(wǎng)頁元素加載慢,如何操作元素就會把找不到元素的異常,此時需要設(shè)置元素等待,等待元素加載完,再操作,感興趣的可以了解一下
    2023-01-01
  • 成功解決IDEA2020 Plugins 連不上、打不開的方法

    成功解決IDEA2020 Plugins 連不上、打不開的方法

    這篇文章主要介紹了成功解決IDEA2020 Plugins 連不上、打不開的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • Spring的@Value如何從Nacos配置中心獲取值并自動刷新

    Spring的@Value如何從Nacos配置中心獲取值并自動刷新

    這篇文章主要介紹了Spring的@Value如何從Nacos配置中心獲取值并自動刷新,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07

最新評論

南阳市| 商都县| 赞皇县| 九龙坡区| 扬州市| 安丘市| 台中市| 文登市| 连江县| 安义县| 保靖县| 永顺县| 大厂| 龙胜| 杂多县| 秀山| 德阳市| 石首市| 洪江市| 尖扎县| 东光县| 若尔盖县| 忻州市| 璧山县| 日照市| 普安县| 彩票| 邯郸市| 明星| 刚察县| 东方市| 忻州市| 集安市| 崇明县| 太湖县| 麟游县| 定襄县| 陕西省| 定西市| 阿拉善盟| 东乌珠穆沁旗|