这是我第一次写项目,感觉还行吧。不敢说很好。

项目要求:
实现银行自动取款机的以下基本操作功能:读卡、取款、存款、查询。(自动取款机中修改密码不作要求)
其他要求:
用户在账号密码正确进入主界面后,只要不退卡,可以循环操作。具体循环操作次数不固定;用户每选择一项服务并操作完后,给出相应的提示,并提示用户返回主界面
中间要求:
请大家自己看代码理解

package ATM;import java.util.Scanner;/*** *存在部分不足,但是基本的操作都可以使用,不影响操作,要求都可以达到。*/
public class ATM {public static void main(String[] args) {System.out.println("*******" + "欢迎使用中国银行自动取款服务" + "*********");//循环计数int count = 3;for (int i = 1; i <= 3; i++) {Scanner input = new Scanner(System.in);System.out.println("**" + "请输入你的账号" + "**");int Id = input.nextInt();Scanner sc = new Scanner(System.in);System.out.println("**" + "请输入你的密码" + "**");String password = sc.next();//判断账号密码是否匹配if (password.equals("123456") && Id == 111111) {System.out.println("**" + "密码正确" + "**");break;} else {System.out.println("**" + "你的账号或密码有误" + "**");System.out.println("**" + "你已经错了第" + i + "次" + "**");count--;if (i == 3) {System.out.println("**" + "您的账号已被冻结" + "**");break;}}}//当为0即不能进入系统if(count!=0) {ATM atm = new ATM();atm.Select(); }}public User user = new User();//设初始余额为常量5000static double balance = 5000;public class User {private double balance;public double getBalance() {return balance;}public void setBalance(double balance) {this.balance = balance;}}//主体循环语句public void Select() {//用循环一直执行while (true) {System.out.println("*******" + "欢迎使用中国银行自动取款服务" + "*********");System.out.println("**" + "1.查询" + "         " + "2.取款" + "**");System.out.println("**" + "3.存款" + "         " + "4.退卡" + "**");System.out.println("**" + "请选择你需要的服务:");Scanner reader = new Scanner(System.in);int number = reader.nextInt();switch (number) {case 1://查询余额showBalance();break;case 2://取款drawMoney();break;case 3://存款depositMoney();break;case 4://退卡,相当于结束System.out.println("*******" + "中国银行自动取款服务" + "*********");System.out.println("*******" + "感谢您使用中国银行自动取款服务" + "*********");System.out.println("*******" + "     请取卡,再见!        " + "*********");break;}if (number == 4) {break;}}}public void drawMoney() {System.out.println("******" + "请输入取款金额" + "******");Scanner input = new Scanner(System.in);double qk = input.nextDouble();//判断值是否大于初值5000,不存在有负数的所以没有写while (qk > user.getBalance() + balance) {System.out.println("******" + "余额不足,取款失败!" + "******");System.out.println("******" + "请重新输入金额" + "******");qk = input.nextDouble();System.out.println("******" + "返回请选择5" + "******");if(input.nextDouble()==5) {Select();}}//将值进行更新user.setBalance(user.getBalance() - qk);System.out.println("******" + "取款成功!" + "******");System.out.println("******" + "返回请选择5" + "******");if(input.nextDouble()==5) {Select();}}public void showBalance() {//这里是显示最新数据System.out.println("**" + "      您的账户余额为" + (balance + user.getBalance()) + "元/人民币");System.out.println("******" + "返回请选择5" + "******");Scanner input = new Scanner(System.in);double ye = input.nextDouble();if(input.nextDouble()==5) {Select();}}public void depositMoney() {System.out.println("******" + "请输入存款金额" + "******");Scanner input = new Scanner(System.in);double ck = input.nextDouble();//这里是用最新值加上新值得出更新值user.setBalance(user.getBalance() + ck);System.out.println("******" + "存款成功!" + "******");System.out.println("账户余额" + (user.getBalance() + balance) + "元/人民币");System.out.println("******" + "返回请选择5" + "******");if(input.nextDouble()==5) {Select();}}
}

代码自测有效,请不要直接复制粘贴。

基于JAVA控制台版本银行自动取款机相关推荐

  1. 基于JAVA控制台版本银行自动取款机(修改版)

    这是我第一次写项目所进行的修改之后的内容,感觉比之前写的通顺而且相比较更加容易理解. 项目要求: 实现银行自动取款机的以下基本操作功能:读卡.取款.存款.查询.(自动取款机中修改密码不作要求) 其他要 ...

  2. 基于Java+控制台实现车辆信息管理系统

    基于Java+控制台实现车辆信息管理系统 一.系统介绍 二.功能展示 1.主要功能 2.查看所有车辆信息 3.车辆信息添加 4.车辆信息查询 5.车辆信息删除 三.系统实现 1.car.java 四. ...

  3. 2048——Java控制台版本

    前情提要,祝2021年的蓝桥杯小伙伴成绩突出. 贪心.杂凑.递归.分类.评分.哈希.共识.聚类.分治.启发式.粒子群.最大期望.最小完成时间.序列最小优化....算法无数,但是基础类似,无非坐标处理. ...

  4. java四则运算考试系统_小学生四则运算出题软件-基于java控制台的实现

    .题目描述: 1. 使用 -n 参数控制生成题目的个数,例如 Myapp.exe -n 10 -o Exercise.txt 将生成10个题目. 2. 使用 -r 参数控制题目中数值(自然数.真分数和 ...

  5. 我要3万取款机怎么取_银行自动取款机一次可以取3万么

    2018-08-15 16:57龙山红 客户经理 一般银行的取款机一次最多可提2000--3000元不等,具体以银行提示为准. 另外,每天在自动取款机提取金额的上限一般是20000元,所以取3万元只能 ...

  6. Java语言实现 ATM 自动取款机系统

    ATM自动取款机 ​​​ 实现 ATM 自动取款机系统,本系统有如下功能: 1.登陆    用户通过输入卡号和密码登陆本系统,如果输入错误,提示错误并重新输入,连续三次错误吞卡. 2.取款    系统 ...

  7. 基于python的ATM(自动取款机)项目

    用python写了一个ATM(自动取款机),共有十种功能,可用作大学生大作业. 具体实现效果: 1.功能模块 2.姓名.身份证号.电话号码的采集.设置密码.向注册的手机号发送信息(包括异常处理) 3. ...

  8. 程序设计java银行自动取款机_模拟自动取款机系统(JAVA)

    import java.io.*; /*该类为实现客户信息及部分功能*/ class Account { private String code =null; private String name ...

  9. Java程序实现ATM自动取款机功能

    ATM机执行流程 欢迎使用ATM 请输入卡号: 10086 请输入密码: 10086 请输入你想要操作类型 1.余额查询 2.取款***** 3.存款 4.转账***** 5.打印 6.退卡***** ...

最新文章

  1. 在html用div怎样写页脚,使用div+CSS将页脚始终控制在页面最下方的方法
  2. python与数据库连接的代码_python连接数据库的案例及源代码
  3. 875. Koko Eating Bananas
  4. 阅读gulp源码小结
  5. linux卸载htop,linux下 htop 工具简介
  6. JVM内存模型和性能调优:JVM整体结构及内存模型- 第10篇
  7. 网盘容量背后的技术秘密
  8. navicat连接数据库出错,但是SQLyog可以正常连接
  9. Windows server 2016 安装sql server
  10. Nvidia Tesla A100 驱动安装方法
  11. yarn和npm常用基本命令安装和卸载
  12. 【win7怎么不让垃圾文件进回收站删除】
  13. 加入收藏夹,设为首页代码,强制设为主页代码
  14. 最逼近Mac OS的Linux系统 -- Elementary OS
  15. 微信服务号开发----发送消息
  16. 3款事半功倍的效率工具,每一款都堪称精品,后悔没早点遇到
  17. pandas计算含缺失值中列平均值_Pandas之DataFrame基本操作
  18. 计算机毕业设计(附源码)python学衡国学堂围棋社管理系统
  19. C++核心编程【只讲解C++语言特性,需要有C语言基础】
  20. Sqoop进行导入数据到Hive时报错:ERRORtool.ImportTool:Importfailed:java.io.IOException:java.lang.ClassNotFoundExc

热门文章

  1. Class Test can not access a member of class User with modifiers “private“
  2. QPluginLoader 加载插件dll失败
  3. 国内大陆有哪些芯片公司处于世界前10?一起看看!
  4. 计算机主板的海关编码,请问线路板上已经含有电子元件的海关编码是多少?急啊!!...
  5. RESIZE DATAFILE与ORA-03297
  6. 153分钟学会Rpdf 百度云盘
  7. 多线程 分段 爆破crc32 C#C/C++ (一)
  8. python与机械教育初探_python与机器学实践-何宇健 源代码及过程中遇到的问题
  9. Acer 4750 安装黑苹果_黑苹果安装体验初始阶段几个小技巧
  10. python安装需要什么电脑配置_自学python用什么配置电脑?