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

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

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

注意:本項(xiàng)目來(lái)自B站韓順平老師 點(diǎn)此跳轉(zhuǎn)

完整代碼請(qǐng)看這里:gitee

點(diǎn)擊這里 GitHub鏈接

如圖:

老韓思路:

(1)可以把收益入賬和消費(fèi),保存到數(shù)組中(但目前學(xué)到的數(shù)組是定長(zhǎng)的)

(2)可以使用對(duì)象

(3)可以使用String拼接

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

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

(2)拼接好字符串

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

我用的字符串拼接

效果圖

**

一些說(shuō)明

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

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

SmallChangeSys 用來(lái)寫main方法代碼如下

package com.project.money.oop;

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

SmallChangeSysOOP用來(lái)實(shí)現(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;//當(dāng)前流動(dòng)的錢
    private double balance=0;//余額
    private String detailed="------------零錢通明細(xì)--------------";
    private Date date = null;
    //可以用于日期格式化的
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
public void menu(){};
//1 零錢通明細(xì)
 public void detailed_(){};
 //2 收益入賬"
 public void input(){};
 //3消費(fèi)
    public void output(){};

}

具體說(shuō)明各個(gè)方法的作用:

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 零錢通明細(xì)");
            System.out.println("\t\t2 收益入賬");
            System.out.println("\t\t3 消費(fèi)");
            System.out.println("\t\t4 退" + "\t" + "出");
            System.out.print("請(qǐng)選擇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("請(qǐng)輸入金額:");
        this.in_money=scanner.nextDouble();

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

                System.out.println("請(qǐng)輸入金額:");
                this.in_money=scanner.nextDouble();
        }
        this.balance+=this.in_money;
        String beizhu="";
        date = new Date();
        System.out.println("請(qǐng)輸入備注:");
        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("請(qǐng)輸入金額:");
        Scanner scanner = new Scanner(System.in);
        in_money=scanner.nextDouble();
        if(balance<in_money){
            System.out.println("余額不足,請(qǐng)充值");
            return;
        }
        while(in_money<0){
            System.out.println("輸入錯(cuò)誤,請(qǐng)重輸");
            in_money=scanner.nextDouble();
            if(balance<in_money){
                System.out.println("余額不足,請(qǐng)充值");
                return;
            }
        }
        this.balance-=in_money;
        System.out.println("請(qǐng)輸入備注:");
        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;//當(dāng)前流動(dòng)的錢
    private double balance=0;//余額
    private String detailed="------------零錢通明細(xì)--------------";
    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 零錢通明細(xì)");
            System.out.println("\t\t2 收益入賬");
            System.out.println("\t\t3 消費(fèi)");
            System.out.println("\t\t4 退" + "\t" + "出");
            System.out.print("請(qǐng)選擇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 零錢通明細(xì)
    public void detailed_(){
        System.out.println(detailed);
    }
    //2 收益入賬"
    public void input(){//收益入賬
        Scanner scanner = new Scanner(System.in);
        System.out.println("請(qǐng)輸入金額:");
        this.in_money=scanner.nextDouble();

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

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

    }


}

一些圖片

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

相關(guān)文章

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

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

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

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

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

    Java常見(jiàn)的四種負(fù)載均衡算法

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

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

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

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

    驗(yàn)證碼是一種用于驗(yàn)證用戶身份或確保用戶操作安全的技術(shù)手段,通常以圖形、聲音或文字的形式出現(xiàn),本文主要介紹了如何通過(guò)java實(shí)現(xiàn)生成驗(yà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的性能提升來(lái)討論了HashMap的一些優(yōu)化點(diǎn),需要的朋友可以參考下
    2016-05-05
  • Mybatis plus實(shí)現(xiàn)Distinct去重功能

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

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

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

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

    成功解決IDEA2020 Plugins 連不上、打不開(kāi)的方法

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

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

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

最新評(píng)論

清徐县| 阜宁县| 上高县| 将乐县| 剑阁县| 沿河| 鄂尔多斯市| 荆州市| 广宗县| 铁岭市| 砀山县| 胶南市| 沈阳市| 故城县| 青浦区| 疏附县| 新乐市| 外汇| 巴林左旗| 庆云县| 潞城市| 宜君县| 涿州市| 安达市| 尼木县| 潞西市| 无棣县| 天祝| 饶平县| 齐齐哈尔市| 五常市| 凌云县| 和田市| 奉新县| 井研县| 原平市| 揭东县| 蒙自县| 华安县| 姜堰市| 泰州市|