Java实现ATM模拟应用
本篇内容主要讲解“Java实现ATM模拟应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java实现ATM模拟应用”吧!
站在用户的角度思考问题,与客户深入沟通,找到临澧网站设计与临澧网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟主机、企业邮箱。业务覆盖临澧地区。
一、功能需求
通过控制台类应用程序,模拟银行取款机功能。首先,显示用户界面,然后根据用户输入进入相关功能界面。
说明:
不考虑取款机余额是否充足;
不考虑取款面额限制(不大于卡中存款即可);
效果参考如下,不局限,表达清楚逻辑即可。
详细说明
1.用户登录(错误)

说明:错误三次后直接退出应用!
2.用户登录(正确)

3.各功能效果





二、需求分析,程序流程图

三、面向过程方式编程实现参考
import java.util.Scanner;
/*
* 一、面向过程编程实现参考
* 说明:
* 1.画流程图,明确实现过程
* 2.要学会拆分,把复杂大问题,拆成容易实现的小问题
* 3.面向过程也要进行适当的封装
*/
public class MyATM {
//[1]定义变量,用于模拟银行数据库相关信息
static String cardNumber="111"; //卡号
static String cardPassword="123"; //密码
static int balance=200; //余额
static Scanner sc=new Scanner(System.in); //用于获取用户输入
//[2]定义相关方法
static void showWelcome(){ //显示欢迎界面
System.out.println("###########################################################");
System.out.println("欢迎使用工商银行自动取款机!");
System.out.println("###########################################################");
}
static void showMain(){ //显示主操作界面
System.out.println("======================================");
System.out.println("主菜单:");
System.out.println("1-查询余额");
System.out.println("2-提取现金");
System.out.println("3-存款");
System.out.println("4-退出");
System.out.println("======================================");
System.out.println("请输入选择序号:");
}
static boolean userLogin(){ //用户登录
System.out.println("请输入卡号:");
System.out.println("提示:模拟插入银行卡,系统中仅有卡号111,其它无效!");
String objNumber=sc.next();
System.out.println("请输入密码:");
System.out.println("提示:默认123!");
String objPassword=sc.next();
if (objNumber.equals(cardNumber) && objPassword.equals(cardPassword))return true;
else return false;
}
static void add(){ //存钱
System.out.println();
System.out.println("请输入存款金额:");
System.out.println("提示:只可输入数字!");
int number=sc.nextInt();
if(number > 0){
balance+=number;
System.out.println("存款成功!");
}
else {
System.out.println("输入错误,存款失败!");
}
System.out.println();
show();
}
static void sub(){ //取钱
System.out.println();
System.out.println("请输入取款金额:");
System.out.println("提示:只可输入数字!");
int number=sc.nextInt();
if(number > balance){
System.out.println("余额不足,取款失败!");
}else {
balance-=number;
System.out.println("取款成功!");
}
System.out.println();
show();
}
static void show(){ //查询余额
System.out.println();
System.out.println();
System.out.println("当前余额为: " + balance + " 元");
System.out.println();
System.out.println();
showMain();
}
static void exitATM(){ //退卡
System.out.println("卡已退出…………");
showWelcome();
}
//[3] 这里写程序主流程,不要将所有代码都写到这里
public static void main(String[] args) {
int inNumber = 3 ; //定义变量,用于标记登录次数
boolean status=false; //用于标识用户登录状态
//[3-1]显示欢迎界面
showWelcome();
//[3-2]用户登录,通过status变量标识登录状态
do {
status=userLogin();
if(status) {
showMain();//显示主操作界面
break;//或者将循环条件设置为假
}
else{
inNumber--;
if (inNumber!=0) System.out.println("用户名或密码不正确,请重新输入!");
}
} while (inNumber > 0);
//[3-3]成功则选择操作
if(status) {
boolean isSelect=true;
while(isSelect) { //控制主功能菜单循环操作
String obj=sc.next();
switch (obj) {
case "1":
show();
break;
case "2":
sub();
break;
case "3":
add();
break;
case "4":
isSelect=false;
sc.close();
exitATM();
}
}
}
else {
sc.close();
exitATM();
}
}
}到此,相信大家对“Java实现ATM模拟应用”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
分享标题:Java实现ATM模拟应用
本文来源:http://www.jxjierui.cn/article/pjiegd.html


咨询
建站咨询
