Java如何实现零钱通(java,开发技术)

时间:2024-05-02 16:00:06 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    如图:

    Java如何实现零钱通

    思路:

    (1)可以把收益入账和消费,保存到数组中(但目前学到的数组是定长的)

    (2)可以使用对象

    (3)可以使用String拼接

    完成收益入账,完成功能驱动程序员增加新的变化的代码

    (1)要接收收益入账的金额,并更新余额

    (2)拼接好字符串

    (3)找到时间如何输出,并且修改其输出格式

    我用的字符串拼接

    Java如何实现零钱通

    一些说明

    创建一个包 com.project.money.oop

    然后创建两个类 SmallChangeSys和SmallChangeSysOOP

    SmallChangeSys 用来写main方法代码如下

    packagecom.project.money.oop;publicclassSmallChangeSys{publicstaticvoidmain(String[]args){SmallChangeSysOOPp=newSmallChangeSysOOP();p.menu();}}

    SmallChangeSysOOP用来实现具体功能

    代码如下:

    packagecom.project.money.oop;importjava.text.SimpleDateFormat;importjava.util.Date;importjava.util.Scanner;publicclassSmallChangeSysOOP{privatedoublein_money=0;//当前流动的钱privatedoublebalance=0;//余额privateStringdetailed="------------零钱通明细--------------";privateDatedate=null;//可以用于日期格式化的SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:mm");publicvoidmenu(){};//1零钱通明细publicvoiddetailed_(){};//2收益入账"publicvoidinput(){};//3消费publicvoidoutput(){};}

    具体说明各个方法的作用:

    public void menu()方法

    publicvoidmenu(){//菜单booleanloop=true;Scannerscanner=newScanner(System.in);while(loop){//循环展示菜单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:");intkey=scanner.nextInt();//选择;switch(key){case1:detailed_();break;case2:input();break;case3:output();break;case4:System.out.println("\t\t程序已经退出");loop=false;break;}}}

    void detailed_()方法

    publicvoiddetailed_(){System.out.println(detailed);//直接输出字符}

    public void input()方法

    publicvoidinput(){//收益入账Scannerscanner=newScanner(System.in);System.out.println("请输入金额:");this.in_money=scanner.nextDouble();while(in_money<0){System.out.println("======输入有误======");System.out.println("是否重新输入?Y(是)或N(否)");//可能点错了不是输入Stringin=scanner.next();//是否重新输入if(in.equals("n")||in.equals("N")){System.out.println("返回主页面中....");/*****************************************/try{Thread.sleep(1000);//暂停1秒提升用户感受}catch(Exceptione){}/*******************************************/return;//退出输入}System.out.println("请输入金额:");this.in_money=scanner.nextDouble();}this.balance+=this.in_money;Stringbeizhu="";date=newDate();System.out.println("请输入备注:");beizhu=scanner.next();this.detailed+="\n收益入帐\t+"+this.in_money+"\t"+sdf.format(date)+"\t余额:"+this.balance+"备注:"+beizhu;}

    public void output()方法

    publicvoidoutput(){System.out.println("请输入金额:");Scannerscanner=newScanner(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("请输入备注:");Stringbeizhu=scanner.next();this.detailed+="\n余额支出\t-"+this.in_money+"\t"+sdf.format(date)+"\t余额:"+this.balance+"备注:"+beizhu;}

    SmallChangeSysOOP完整代码

    packagecom.project.money.oop;importjava.text.SimpleDateFormat;importjava.util.Date;importjava.util.Scanner;publicclassSmallChangeSysOOP{privatedoublein_money=0;//当前流动的钱privatedoublebalance=0;//余额privateStringdetailed="------------零钱通明细--------------";privateDatedate=null;//可以用于日期格式化的SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:mm");publicvoidmenu(){//菜单booleanloop=true;Scannerscanner=newScanner(System.in);while(loop){//循环展示菜单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:");intkey=scanner.nextInt();//选择;switch(key){case1:detailed_();break;case2:input();break;case3:output();break;case4:System.out.println("\t\t程序已经退出");loop=false;break;}}}//1零钱通明细publicvoiddetailed_(){System.out.println(detailed);}//2收益入账"publicvoidinput(){//收益入账Scannerscanner=newScanner(System.in);System.out.println("请输入金额:");this.in_money=scanner.nextDouble();while(in_money<0){System.out.println("======输入有误======");System.out.println("是否重新输入?Y(是)或N(否)");//可能点错了不是输入Stringin=scanner.next();//是否重新输入if(in.equals("n")||in.equals("N")){System.out.println("返回主页面中....");/*****************************************/try{Thread.sleep(1000);//暂停1秒提升用户感受}catch(Exceptione){}/*******************************************/return;//退出输入}System.out.println("请输入金额:");this.in_money=scanner.nextDouble();}this.balance+=this.in_money;Stringbeizhu="";date=newDate();System.out.println("请输入备注:");beizhu=scanner.next();this.detailed+="\n收益入帐\t+"+this.in_money+"\t"+sdf.format(date)+"\t余额:"+this.balance+"备注:"+beizhu;}//3消费publicvoidoutput(){System.out.println("请输入金额:");Scannerscanner=newScanner(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("请输入备注:");Stringbeizhu=scanner.next();this.detailed+="\n余额支出\t-"+this.in_money+"\t"+sdf.format(date)+"\t余额:"+this.balance+"备注:"+beizhu;}}

    一些图片

    Java如何实现零钱通

    Java如何实现零钱通

    Java如何实现零钱通

    Java如何实现零钱通

     </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
    本文:Java如何实现零钱通的详细内容,希望对您有所帮助,信息来源于网络。
    上一篇:javascript如何让li隐藏下一篇:

    16 人围观 / 0 条评论 ↓快速评论↓

    (必须)

    (必须,保密)

    阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18