java寫簡易ATM
本文需求:用java寫一個簡易ATM,
功能:有登陸,有查詢資金功能,有存款功能,有取款功能,有轉賬功能,有退出;
技術需求:會java一維數組及流程判斷
代碼如下:
package com.smallzz.atm;
import java.util.Scanner;
public class Atm {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] cardNum= {"123","456","111"};
String[] pwdNum= {"112","223","343"};
String[] user= {"小張","小李","小小"};
double[] money= {18999.0,4990.0,20000.0};
/**
* 注:time爲密碼輸入次數,indexO用於判斷賬號是否存在若爲20則爲不存在,
* indexO2用於判斷轉賬卡號是否存在若爲20則爲不存在,
* out爲是否結束循環功能菜單,當out爲20時則循環,其他爲退出
*
* */
int time=3;
int indexO=20;
int indexO2=20;
int out=20;
do {
System.out.println("請輸入您的卡號");
String card = scanner.nextLine();
/**賬號是否存在*/
for(int i=0;i<cardNum.length;i++) {
if(card.equals(cardNum[i])) {
indexO=i;
break;
}
}
/**賬號存在*/
if(indexO!=20) {
System.out.println("歡飲您:"+user[indexO]);
System.out.println("請輸入您的密碼:");
String pwd = scanner.nextLine();
if(pwd.equals(pwdNum[indexO])) {
System.out.println("登錄成功!!");
/**循環功能菜單*/
while (out==20) {
System.out.println("請選擇服務項目:1.查詢,2.存款,3.取款,4.轉賬,5.退出");
int num=scanner.nextInt();
switch (num) {
case 1: System.out.println(money[indexO]);
break;
case 2:System.out.println("請輸入您的存款金額:");
int saveMoney=scanner.nextInt();
money[indexO]+=saveMoney;
System.out.println("存款成功!!");
System.out.println("您的餘額爲:"+money[indexO]);
break;
case 3:System.out.println("請輸入您的取款金額:");
int getMoney=scanner.nextInt();
if(getMoney>money[indexO]) {
System.out.println("當前餘額不足!!");
}else {
money[indexO]-=getMoney;
System.out.println("取款成功!!");
System.out.println("您的餘額爲:"+money[indexO]);
}
break;
case 4:System.out.println("請輸入轉賬卡號:");
String qq = scanner.nextLine();
String zhuanCard=scanner.nextLine();
/**賬號是否存在*/
for(int j=0;j<cardNum.length;j++) {
if(zhuanCard.equals(cardNum[j])) {
indexO2=j;
break;
}
}
/**存在*/
if(indexO2!=20) {
System.out.println("請輸入您的轉賬金額:");
int zhuanMoney=scanner.nextInt();
if(zhuanMoney>money[indexO]) {
System.out.println("餘額不足!!");
}else {
money[indexO]-=zhuanMoney;
money[indexO2]+=zhuanMoney;
System.out.println("成功向:"+user[indexO2]+"轉賬:"+zhuanMoney);
System.out.println("您的餘額爲:"+money[indexO]);
}
}else {
System.out.println("此賬號不存在!!");
}
break;
case 5:out=5;
System.out.println("退出成功!!");
break;
}
}
time=0;
}else {
time--;
System.out.println("密碼輸入有誤,請重新輸入:");
System.out.println("您剩餘:"+time+"次機會");
}
}
} while (time>0);
}
}