地铁 java_怎么用Java编写一个地铁售票机的程序?
import java.io.IOException;
/**
* ATM机类
*
* 查看余额
*
* 取款
*
* 存款
*
* 退出系统
*
*
*
*/
public class ATM {
static double yue = 1200.00;
public static void main(String[] arg) {
ATM localTest1 = new ATM();
localTest1.ATM_Operate();
}
/**
* ATM机的操作
*/
private void ATM_Operate() {
System.out.println("欢迎使用中国工商银行ATM取款机");
System.out.println("1、查看余额 2、取款");
System.out.println("3、存款 0、退出");
System.out.print("请输入您需要的服务:");
byte[] buffer = new byte[512];
try {
int count = System.in.read(buffer);// 返回实际读取的字节数
System.out.print("您输入的是:");
for (int i = 0; i < count; i++) {
System.out.print("" + (char) buffer[i]);
}
if ((char) buffer[0] == '1') {
// 查看余额
System.out.println("您的余额是:¥" + yue + "元");
System.out.println();
ATM_Operate();
} else if ((char) buffer[0] == '2') {
// 取款
withdrawal();
System.out.println();
ATM_Operate();
} else if ((char) buffer[0] == '3') {
// 存款
deposit();
System.out.println();
ATM_Operate();
} else if ((char) buffer[0] == '0') {
// 退出
System.out.println("您已经成功退出系统,谢谢你的使用");
System.exit(0);
} else {
System.out.println("输入不合法,请重新输入");
System.out.println();
ATM_Operate();
}
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 取款
*
* @throws IOException
*/
private void withdrawal() throws IOException {
byte[] buffer = new byte[512];
System.out.print("请输入您要取出的金额:¥");
int count2 = System.in.read(buffer);// 返回实际读取的字节数
System.out.print("您输入的金额是:");
for (int i = 0; i < count2 - 1; i++) {
System.out.print("" + (char) buffer[i]);
}
System.out.println();
// 字符0 ~ 9对应ASCII值48 ~ 57
boolean flag = false;
for (int i = 0; i < count2 - 1; i++) {
if ((char) buffer[i] > 47 && (char) buffer[i] < 58) {
if (i == count2 - 2) {
flag = true;
}
} else {
// 输入的字符不是数值
System.out.println("输入不合法,请重新输入");
withdrawal();
break;
}
}
System.out.println();
if (flag) {
System.out.print("您已成功取出¥:");
String num = "";
for (int i = 0; i < count2 - 1; i++) {
System.out.print("" + (char) buffer[i]);
num += (char) buffer[i];
}
yue -= Double.valueOf(num);
System.out.print(",现在余额¥:" + yue);
}
}
/**
* 存款
*
* @throws IOException
*/
private void deposit() throws IOException {
byte[] buffer = new byte[512];
System.out.print("请输入您要存入的金额:¥");
int count2 = System.in.read(buffer);// 返回实际读取的字节数
System.out.print("您输入的金额是:");
for (int i = 0; i < count2 - 1; i++) {
System.out.print("" + (char) buffer[i]);
}
System.out.println();
// 字符0 ~ 9对应ASCII值48 ~ 57
boolean flag = false;
for (int i = 0; i < count2 - 1; i++) {
if ((char) buffer[i] > 47 && (char) buffer[i] < 58) {
if (i == count2 - 2) {
flag = true;
}
} else {
// 输入的字符不是数值
System.out.println("输入不合法,请重新输入");
withdrawal();
break;
}
}
System.out.println();
if (flag) {
System.out.print("您已成功存入¥:");
String num = "";
for (int i = 0; i < count2 - 1; i++) {
System.out.print("" + (char) buffer[i]);
num += (char) buffer[i];
}
yue += Double.valueOf(num);
System.out.print(",现在余额¥:" + yue);
}
}
}
取消
评论
地铁 java_怎么用Java编写一个地铁售票机的程序?相关推荐
- 数字倒序Java_怎么用Java编写一个程序,将输入的数字重新倒叙排列?
思路如下: 1,录入字符串 2,使用正则表达式分割 3,转换为int数组 4,排序 5,拼接,代码如下: import java.util.Arrays; import java.util.Scann ...
- java体重指数计算器程序_用Java编写一个简单的计算器程序
展开全部 import java.awt.*; import java.awt.event.*; public class CalcAppDemo extends Frame{ private Tex ...
- java编写一个ATM取款机小程序
此程序效果图如下: 一下为源代码: package step4; import java.util.Scanner; public class ForPractice4 { public static ...
- atm机编程java_如何用Java编写模拟ATM取款机的程序
/** * @version 1.0 * @author Devil_Angel * 该程序的功能为实现模拟银行ATM自动取款机提款,查询等功能. * */ import Java.io.*; /*该 ...
- 用Java编写一个租车小程序
要求实现的功能有: 1.展示所有可租车辆 2.选择车型,租车量 3.显示租车清单,包括:总载货量,总载客量,总金额等: 4.车辆类型 客车:只能载客 货车:只能载货 皮卡:既能载人,有能载货 Java ...
- 用Java编写一个最简单的桌面程序
使用Java的优势在于网络应用方面,但Java也提供了强大的用于开发桌面程序的API,它们包含在javax.swing包中.使用这个包可以编写简单的Java桌面应用程序. Java的javax.swi ...
- 停车场管理系统 java_使用java编写一个停车场管理系统
使用java编写一个停车场管理系统 发布时间:2020-11-30 16:00:28 来源:亿速云 阅读:145 作者:Leah 这篇文章给大家介绍使用java编写一个停车场管理系统,内容非常详细,感 ...
- java编写存钱_用Java编写一个简单的存款
package desposit.money; public class DespositMoney { public static void main(String[] args) { Custom ...
- Java黑皮书课后题第10章:***10.8(金融:Tax类)编程练习题8.12使用数组编写一个计算税款的程序。设计一个名为Tax类,该类包含下面的实例数据域
***10.8(金融:Tax类)编程练习题8.12使用数组编写一个计算税款的程序.设计一个名为Tax类,该类包含下面的实例数据域 题目 程序解释 代码 Test8.java Test8_Tax.jav ...
最新文章
- 【软件工程】数据流图 ( 数据字典 | 数据流图平衡原则 | 父图与子图平衡 | 子图内平衡 | 数据流图绘制原则 )
- 工具用途_德普优化使用指南:16个工具的功能及用途(工具文)
- 使用Nginx过滤网络爬虫
- Nginx server之Nginx作为反向代理服务器
- 【数据结构】30、hashmap=》hash 计算方式
- 学以致用一 安装centos7.2虚拟机
- 我和ASP.NET MVC有个约会
- 最短路径之弗洛伊德算法
- jsf入门实例_JSF错误消息示例教程
- linux重启网卡命令_如何在 Linux 中更改 MAC 地址 | Linux 中国
- Kafka如何保证不丢数据?
- pyspark 学习笔记——pyspark安装
- 前端js实现打印excel表格
- c语言中十进制转化二进制八进制十六进制,十进制转化为二进制八进制十六进制...
- Veeam 安装部署 - 部署 Veeam Backup Replication
- git合并——衍合于挑拣(cherry-pick)——只合并某个commit
- 解决手机QQ或微信已开通邮件提醒,但收到邮件仍不提醒的问题
- 期权杠杆比率如何计算?
- python图片切割与合并
- 解决使用maven打jar包缺失依赖包问题
热门文章
- 2022年软考信息安全工程师考试备考指南
- linux 磁盘控制器,linux – 戴尔R710上的PERC 6 / i RAID:单个控制器上的慢速磁盘…… RAID10?...
- java程序a-z b-y,请完成下列Java程序:对大写的26个英文字母加密,从键盘输入一个大写字母串,输出这个串加密后的结 - 赏学吧...
- 使用gpio输出驱动蜂鸣器出现破音_探索者 STM32F407 开发板资料连载第七章 蜂鸣器实验...
- Java基础---方法1
- JS-面向对象-对象的特性-禁止对象扩展 / 对象的特性-封印对象 / 对象的特性-冻结对象
- C#调用Server_SQL
- mysql中生成列与JSON类型的索引
- An invalid form control with name='timeone[]' is not focusable.
- 未与信任 SQL Server 连接相关联