简单的小程序实现ATM机操作
简单的小程序实现ATM机操作
代码如下:
package Day06;
import java.util.Scanner;
public class TestAccount {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Account[] accountArray = new Account[3];
for (int i = 0; i < accountArray.length; i++) {
accountArray[i] = new Account(i, 0.0);
}
boolean loopFlag = true;
while (loopFlag) {
loopFlag = printAccount(sc, accountArray);
}
}
/**
* 用来模拟ATM机打印的主方法
* @param sc
* @param accountArray
* @return
*/
private static boolean printAccount(Scanner sc, Account[] accountArray) {
boolean loopFlag = true;
System.out.println("Enter an id: ");
int id = -1;
if (sc.hasNextInt()) {
id = sc.nextInt();
}
int index = -1;
for (int i = 0; i < accountArray.length; i++) {
if (accountArray[i].getId() == id) {
index = i;
}
}
if (index >= 0) {
System.out.println("Main menu ");
System.out.println("1: check balance");
System.out.println("2: withdraw");
System.out.println("3: deposit");
System.out.println("4: exit");
System.out.print("Enter a choice:");
if (sc.hasNextInt()) {
id = sc.nextInt();
}
switch (id) {
case 1:
System.out.println("the balance is " + accountArray[index].getAccount());
break;
case 2:
accountArray[index].setAccount(accountArray[index].getAccount() - 100);
break;
case 3:
accountArray[index].setAccount(accountArray[index].getAccount() + 100);
break;
case 4:
loopFlag = false;
break;
default:
loopFlag = false;
break;
}
}
return loopFlag;
}
}
第二部分
package Day06;
public class Account {
private int id;
private double account;
/**
*
*/
public Account() {
}
/**
* @param id
* @param account
*/
public Account(int id, double account) {
this.id = id;
this.account = account;
}
/**
* @return the id
*/
public int getId() {
return this.id;
}
/**
* @param id the id to set
*/
public void setId(int id) {
this.id = id;
}
/**
* @return the account
*/
public double getAccount() {
return this.account;
}
/**
* @param account the account to set
*/
public void setAccount(double account) {
this.account = account;
}
}
简单的小程序实现ATM机操作的更多相关文章
- 输出多行字符的一个简单JAVA小程序
public class JAVA { public static void main(String[] args) { System.out.println("-------------- ...
- python -----一个简单的小程序(监控电脑内存,cpu,硬盘)
一个简单的小程序 用函数实现!~~ 实现: cpu 使用率大于百分之50 时 , C 盘容量不足5 G 时, 内存 低于2G 时. 出现以上其中一种情况,发送自动报警邮件! 主要运用 到了两个 模 ...
- 3.2 Lucene实战:一个简单的小程序
在讲解Lucene索引和检索的原理之前,我们先来实战Lucene:一个简单的小程序! 一.索引小程序 首先,new一个java project,名字叫做LuceneIndex. 然后,在project ...
- JAVA 小程序之ATM
一个JAVA的小程序,主要要求有模块化编程的思想,能够把ATM中各个功能独立成为一个一个的方法. ATM主要功能有: 查询余额: 取款: 存款: 修改密码: 退出. 以上功能均由独立的方法给出,具体实 ...
- 体验报告:微信小程序在安卓机和苹果机上的区别
很多人可能会问:微信小程序和在微信里面浏览一个网页有什么区别? 首先,小程序的运行是全屏的,界面跟进入了一个APP很像,更为沉浸跟在微信里面访问h5不一样:其次,它的浏览体验更为稳定. 不过,这还不够 ...
- Python3的tkinter写一个简单的小程序
一.这个学期开始学习python,但是看了python2和python3,最后还是选择了python3 本着熟悉python的原因,并且也想做一些小程序来增加自己对python的熟练度.所以写了一个简 ...
- Python绘制PDF文件~超简单的小程序
Python绘制PDF文件 项目简介 这次项目很简单,本次项目课,代码不超过40行,主要是使用 urllib和reportlab模块,来生成一个pdf文件. reportlab官方文档 http:// ...
- 微信小程序基础之交互操作控件
好久没有写关于微信小程序的文章了,今天简单的发表一篇,内容比较简单,包括:ActionSheet上拉菜单.AlertAction提示框.SuccessAction完成框.LoadingAction加载 ...
- 用python写个简单的小程序,编译成exe跑在win10上
每天的工作其实很无聊,早知道应该去IT公司闯荡的.最近的工作内容是每逢一个整点,从早7点到晚11点,去查一次客流数据,整理到表格中,上交给素未蒙面的上线,由他呈交领导查阅. 人的精力毕竟是有限的,所以 ...
随机推荐
- android网络监测
public static boolean isNetworkConnected(Context context) { if (context != null) { ConnectivityManag ...
- javascript的八张图
- [Leetcode] Binary search--275 H-Index
Follow up for H-Index: What if the citations array is sorted in ascending order? Could you optimize ...
- Phpcms·二次开发
PHPCMS V9产品介绍 PHPCMS V9(简称V9)采用PHP5+MYSQL做为技术基础进行开发.V9采用OOP(面向对象)方式进行基础运行框架搭建.模块化开发方式做为功能开发形式.框架易于功能 ...
- 做电子商务的七个SEO技巧
随着电子商务网站的迅速增加,为了适应不断增长的网络客户多样化需求.越来越多的人注意到,从网站上购买既节省了时间和金钱,因此电子商务社区越来越激烈.网站需要具有独特的设计风格和功能,而不是网站内容的不断 ...
- Nginx实用教程(一):启动、停止、重载配置
Nginx是一个功能强大的web服务器和负载均衡软件,由俄罗斯人开发.Nginx包括一个master进程和数个worker进程,master进程用于读取.解析配置文件和管理worker进程,worke ...
- 基于C#的Appium自动化测试框架(Ⅰ)
因为工作原因,使用的编程语言都是C#,但是国内相应的Appium资料少得可怜,Java版本的Appium也考虑过,但是奈何自己搞不定Eclipse这个编译环境[说白了就是因为懒-- 无意中看到了外面的 ...
- 有关苹果无法导出p12证书的问题解决办法。
原因一 所选类型选择错误.解决办法:左侧有两个分类,一个是钥匙串,一个是种类,要选择种类中的我的证书或者证书.然后在右侧证书列表中,右键导出即可. 原因二 使用钥匙串生成的证书有问题,格式为(cert ...
- RabbitMQ系列教程之三:发布/订阅(Publish/Subscribe)
(本教程是使用Net客户端,也就是针对微软技术平台的) 在前一个教程中,我们创建了一个工作队列.工作队列背后的假设是每个任务会被交付给一个[工人].在这一部分我们将做一些完全不同的事情--我们将向 ...
- ELK-Kibana-01
1.Kibana介绍 Kibana 是一个设计使用和Elasticsearch配置工作的开源分析和可视化平台.可以用它进行搜索.查看.集成Elasticsearch中的数据索引.可以利用各种图 ...