java編寫簡(jiǎn)單的ATM存取系統(tǒng)
新手練手必備~
密碼賬戶為:
先創(chuàng)建賬戶類:
package cn.Atm;
/**
* @author 偶my耶
*/
import java.io.*;
import com.project.project;
public class Account {
private String number=null;
private String name=null;
private String password=null;
private double money=0.0;
public Account(String number,String name,String password,double money){
this.number=number;
this.name=name;
this.password=password;
this.money=money;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
protected void sub_Balance(double mon) {
money-=mon;
}
protected void add_Balancen(double mon) {
money+=mon;
}
}
然后建立操作類:
里面包含各種操作方法:
package cn.Atm;
/**
* @author 偶my耶
*/
import java.io.*;
import com.project.project;
public class ATM {
Account act;
public ATM(){
act=new Account("0000", "test", "0000", 2000);
}
/*************歡迎界面*********************/
protected void Welcome(){
String str="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~";
System.out.print(str+"\n");
System.out.print(
"1.取款"+"\n"+
"2.查詢"+"\n"+
"3.存款"+"\n"+
"4.退出"+"\n"
);
System.out.print(str+"\n");
}
/************登陸系統(tǒng)********************/
protected void Load_Sys() throws Exception{
String card,pwd;
int counter=0;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do{
System.out.println("請(qǐng)輸入你的卡號(hào)");
card=br.readLine();
System.out.println("請(qǐng)輸入你的密碼");
pwd=br.readLine();
if (!isRight(card,pwd)) {
System.out.println("你的卡號(hào)或密碼有誤");
counter++;
}
else {
Welcome();
SysOpter();
}
}while(counter<5);
System.exit(1);
}
/**********系統(tǒng)操作提示******************/
protected void SysOpter() throws Exception {
int num;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
System.out.println("請(qǐng)選擇你要操作的項(xiàng)目(1--4)");
num=br.read();
switch (num) {
case 49:
GetBalance();
break;
case 50:
Inqu_Iofo();
break;
case 51:
AddBalance();
break;
case 52:
Exit_Sys();
break;
}
}
/**********信息查詢*******************/
protected void Inqu_Iofo() throws Exception{
// TODO Auto-generated method stub
String str="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~";
System.out.print(str+"\n");
System.out.print(
"賬號(hào)"+act.getNumber()+"\n"+
"姓名"+act.getName()+"\n"+
"余額"+act.getMoney()+"\n"+
str+"\n"
);
SysOpter();
}
/**********存款******************/
public void AddBalance() throws Exception{
// TODO Auto-generated method stub
String str=null,str1;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do {
System.out.println("請(qǐng)輸入存款數(shù)目");
str=br.readLine();
double qu=Double.valueOf(str).doubleValue();
act.add_Balancen(qu);
System.out.println("存款成功,你的賬戶余額為"+act.getMoney());
Welcome();
SysOpter();
} while (true);
}
/**********取款********************/
public void GetBalance() throws Exception{
// TODO Auto-generated method stub
String str=null,str1;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do {
System.out.println("請(qǐng)輸入取款數(shù)目");
str=br.readLine();
double qu=Double.valueOf(str).doubleValue();
if(qu>act.getMoney()){
System.out.println("余額不足請(qǐng)重新輸入");
}
else {
act.sub_Balance(qu);
System.out.println("取款成功你的賬戶余額未"+act.getMoney());
Welcome();
SysOpter();
}
} while (true);
}
/*********退出******************/
protected void Exit_Sys () {
// TODO Auto-generated method stub
System.out.println("安全退出!");
System.exit(1);
}
/**********卡號(hào)和密碼是否正確********************/
protected boolean isRight (String card, String pwd) {
// TODO Auto-generated method stub
if (act.getNumber().equals(card)&&act.getPassword().equals(pwd)) {
return true;
} else {
return false;
}
}
public static void main(String[] args) throws Exception {
ATM atm=new ATM();
// atm.Welcome();
atm.Load_Sys();
}
}
代碼僅供參考
運(yùn)行結(jié)果如下
好了,小伙伴們可以自己做個(gè)ATM機(jī)了^_^
- Java實(shí)現(xiàn)ATM取款機(jī)程序
- Java 8 Stream Api 中的 map和 flatMap 操作方法
- java實(shí)現(xiàn)ATM取款項(xiàng)目
- java 使用線程做的一個(gè)簡(jiǎn)單的ATM存取款實(shí)例代碼
- Java實(shí)現(xiàn)銀行ATM系統(tǒng)
- Java項(xiàng)目實(shí)現(xiàn)模擬ATM機(jī)
- java模擬ATM功能(控制臺(tái)連接Mysql數(shù)據(jù)庫(kù))
- 淺談java8 stream flatMap流的扁平化操作
- Java實(shí)現(xiàn)簡(jiǎn)單銀行ATM功能
- Java基于控制臺(tái)界面實(shí)現(xiàn)ATM系統(tǒng)
相關(guān)文章
Java多線程Callable和Future接口區(qū)別
這篇文章主要介紹了Java多線程Callable和Future接口區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04SpringBoot?mybatis-plus使用json字段實(shí)戰(zhàn)指南
在現(xiàn)代應(yīng)用開(kāi)發(fā)中經(jīng)常會(huì)使用JSON格式存儲(chǔ)和傳輸數(shù)據(jù),為了便捷地處理數(shù)據(jù)庫(kù)中的JSON字段,MyBatis-Plus提供了強(qiáng)大的JSON處理器,這篇文章主要給大家介紹了關(guān)于SpringBoot?mybatis-plus使用json字段的相關(guān)資料,需要的朋友可以參考下2024-01-01MybatisPlus 多租戶架構(gòu)(Multi-tenancy)實(shí)現(xiàn)詳解
這篇文章主要介紹了MybatisPlus 多租戶架構(gòu)(Multi-tenancy)實(shí)現(xiàn)詳解,詳細(xì)的介紹了什么是多租戶架構(gòu)以及使用MybatisPlus實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-11-11Java實(shí)現(xiàn)輸入流轉(zhuǎn)化為String
這篇文章主要介紹了Java實(shí)現(xiàn)輸入流轉(zhuǎn)化為String的相關(guān)資料,需要的朋友可以參考下2016-12-12詳解Spring中Spel表達(dá)式和el表達(dá)式的區(qū)別
在?Java?開(kāi)發(fā)中,表達(dá)式語(yǔ)言是一種強(qiáng)大的工具,而SpEL?表達(dá)式與EL?表達(dá)式是我們常常遇到兩種表達(dá)式語(yǔ)言,下面我們就來(lái)看看它們的具體使用與區(qū)別吧2023-07-07使用Java編寫一個(gè)簡(jiǎn)單的Web的監(jiān)控系統(tǒng)
這篇文章主要介紹了使用Java編寫一個(gè)簡(jiǎn)單的Web的監(jiān)控系統(tǒng)的例子,并且將重要信息轉(zhuǎn)為XML通過(guò)網(wǎng)頁(yè)前端顯示,非常之實(shí)用,需要的朋友可以參考下2015-11-11java socket接收保證能讀完數(shù)據(jù)的實(shí)例
這篇文章主要介紹了java socket接收保證能讀完數(shù)據(jù)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-10-10