그림과 같이 :
아이디어 :
(1) 수입을 기록하고 소비하여 배열에 저장할 수 있습니다. (단, 지금까지 학습한 배열은 고정된 길이입니다.)
(2) 객체를 사용할 수 있습니다
(3) 문자열 접합
을 사용하여 수익 기록을 완료하고 프로그래머가 새로운 변경 사항을 추가하도록 유도하는 코드를 완성할 수 있습니다
(1) 수익 금액을 받기 위해 녹음, 잔액 업데이트
(2) 스플라이싱 좋은 문자열
(3) 시간 출력 방법 알아보기, 출력 형식 수정
문자열 스플라이싱을 사용했습니다
몇 가지 안내
패키지 만들기 com .project.money.oop
그런 다음 SmallChangeSys 및 SmallChangeSysOOP 클래스를 두 개 만듭니다
SmallChangeSys를 사용하여 다음과 같이 기본 메소드 코드를 작성합니다
package com.project.money.oop; public class SmallChangeSys { public static void main(String[] args) { SmallChangeSysOOP p=new SmallChangeSysOOP(); p.menu(); } }
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(){}; //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){//循环展示菜单 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程序已经退出");loop=false;break; } } }
void 상세한_() 메소드
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){//循环展示菜单 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程序已经退出");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; } }
사진 몇장
위 내용은 Java로 Lingqiantong을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

JWT 및 세션 선택 : 동적 권한 하의 트레이드 오프는 JWT 및 세션에서 많은 초보자를 변경합니다 ...

Baota Nginx에서 Apple-App-Site-Tociation 파일을 올바르게 구성하는 방법은 무엇입니까? 최근 회사의 iOS 부서는 Apple-App-site-Awarticiation 파일을 보냈습니다.

두 가지 일관성 합의 알고리즘의 분류 및 구현 방법을 이해하는 방법은 무엇입니까? 프로토콜 수준에서는 수년간 일관성 알고리즘 선택에 새로운 멤버가 없었습니다. ...

부울 값 (부울), istrue 및 = true를 처리 할 때 MySQL 데이터베이스의 MySQL의 iStrue와 = 실제 쿼리 조건의 차이점.

템플릿 필링에 EasyExcel을 사용할 때 데이터 덮어 쓰기 및 병합 된 셀의 스타일 손실을 피하는 방법은 무엇입니까? Excel에 EasyExcel 사용 ...

Java 프로그래머에서 오디오 및 비디오 개발로 전환하는 방법은 무엇입니까? 학습 경로 및 리소스 권장 사항 Java 프로그래머이고 비디오 프로젝트에 참여하는 경우 � ...


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

Dreamweaver Mac版
시각적 웹 개발 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경
