ATM机类结构设计(二)

该博客详细介绍了如何设计一个ATM机仿真系统,包括输入格式、业务操作的处理和输出格式。用户通过输入卡号、密码和ATM机编号进行取款或查询余额操作。博客中给出了具体的输入输出示例,展示了系统对错误输入的处理以及取款和查询余额业务的正确输出格式。
摘要由CSDN通过智能技术生成

设计ATM仿真系统,具体要求参见作业说明。 OO作业9-1题目说明.pdf

输入格式:
每一行输入一次业务操作,可以输入多行,最终以字符#终止。具体每种业务操作输入格式如下:

取款功能输入数据格式: 卡号 密码 ATM机编号 金额(由一个或多个空格分隔)
查询余额功能输入数据格式: 卡号
输出格式:
①输入错误处理

如果输入卡号不存在,则输出Sorry,this card does not exist.。
如果输入ATM机编号不存在,则输出Sorry,the ATM’s id is wrong.。
如果输入银行卡密码错误,则输出Sorry,your password is wrong.。
如果输入取款金额大于账户余额,则输出Sorry,your account balance is insufficient.。
②取款业务输出

输出共两行,格式分别为:

业务:取款 [用户姓名]在[银行名称]的[ATM编号]上取款¥[金额]

当前余额为¥[金额]

其中,[]说明括起来的部分为输出属性或变量,金额均保留两位小数。

③查询余额业务输出

业务:查询余额 ¥[金额]

金额保留两位小数。

输入样例1:
在这里给出一组输入。例如:

6222081502001312390 88888888 06 500.00

结尾无空行
输出样例1:
在这里给出相应的输出。例如:

业务:取款 张无忌在中国工商银行的06号ATM机上取款¥500.00
当前余额为¥9500.00
结尾无空行
输入样例2:
在这里给出一组输入。例如:

6217000010041315709 88888888 06 3500.00

结尾无空行
输出样例2:
在这里给出相应的输出。例如:

业务:取款 杨过在中国工商银行的06号ATM机上取款¥3500.00
当前余额为¥6395.00
结尾无空行
输入样例3:
在这里给出一组输入。例如:

6217000010041315715

结尾无空行
输出样例3:
在这里给出相应的输出。例如:

业务:查询余额 ¥10000.00
结尾无空行
输入样例4:
在这里给出一组输入。例如:

6222081502001312390 88888888 01 500.00
6222081502051320786 88888888 06 1200.00
6217000010041315715 88888888 02 1500.00
6217000010041315709 88888888 02 3500.00
6217000010041315715

结尾无空行
输出样例4:
在这里给出相应的输出。例如:

业务:取款 张无忌在中国建设银行的01号ATM机上取款¥500.00
当前余额为¥9490.00
业务:取款 韦小宝在中国工商银行的06号ATM机上取款¥1200.00
当前余额为¥8800.00
业务:取款 杨过在中国建设银行的02号ATM机上取款¥1500.00
当前余额为¥8500.00
业务:取款 杨过在中国建设银行的02号ATM机上取款¥3500.00
当前余额为¥5000.00
业务:查询余额 ¥5000.00
结尾无空行
输入样例5:
在这里给出一组输入。例如:

6640000010045442002 88888888 09 3000
6640000010045442002 88888888 06 8000
6640000010045442003 88888888 01 10000
6640000010045442002

结尾无空行
输出样例5:
在这里给出相应的输出。例如:

业务:取款 张三丰在中国农业银行的09号ATM机上取款¥3000.00
当前余额为¥6880.00
业务:取款 张三丰在中国工商银行的06号ATM机上取款¥8000.00
当前余额为¥-1416.00
业务:取款 张三丰在中国建设银行的01号ATM机上取款¥10000.00
当前余额为¥-11916.00
业务:查询余额 ¥-11916.00
结尾无空行

import java.util.ArrayList;
import java.util.Scanner;
import java.util.Iterator;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
   
	
	public static void main(String []args) {
   
		Card bankList=new Card();
		bankList.list.add(new Banks("中国建设银行"));
		bankList.list.add(new Banks("中国工商银行"));
		bankList.list.add(new Banks("中国农业银行"));
		
		User user1=new User("杨过","88888888",10000.00);
		user1.setAccount("借记");
		User user2=new User("郭靖","88888888",10000.00);
		user2.setAccount("借记");
	    User user3=new User("张无忌","88888888",10000.00);
	    user3.setAccount("借记");
	    User user4=new User("韦小宝","88888888",10000.00);
	    user4.setAccount("借记");
	    User user5=new User("张三丰","88888888",10000.00);
	    user5.setAccount("贷记");
	    User user6=new User("令狐冲","88888888",10000.00);
	    user6.setAccount("贷记");
	    User user7=new User("乔峰","88888888",10000.00);
	    user7.setAccount("贷记");
	    User user8=new User("洪七公","88888888",10000.00);
	    user8.setAccount("贷记");
	    
	    user1.addAccount(new Account("6217000010041315709",user1));
	    user1.addAccount(new Account("6217000010041315715",user1));
	    user1.addAccount(new Account("6217000010041315718",user1));
	    user2.addAccount(new Account("6217000010051320007",user2));
	    user3.addAccount(new Account("6222081502001312389",user3));
	    user3.addAccount(new Account("6222081502001312390",user3));
	    user3.addAccount(new Account("6222081502001312399",user3));
	    user3.addAccount(new Account("6222081502001312400",user3));
	    user4.addAccount(new Account("6222081502051320785",user4));
	    user4.addAccount(new Account("6222081502051320786",user4));
	    user5.addAccount(new Account("6640000010045442002",user5));
	    user5.addAccount(new Account("6640000010045442003",user5));
	    user6.addAccount(new Account("6640000010045441009",user6));
	    user7.addAccount(new Account("6630000010033431001",user7));
	    user8.addAccount(new Account("6630000010033431008",user8));
	    
		bankList.getBank("中国建设银行").addPerson(user1);
		bankList.getBank("中国建设银行").addPerson(user2);
		bankList.getBank("中国工商银行").addPerson(user3);
		bankList.getBank("中国工商银行").addPerson(user4);
		bankList.getBank("中国建设银行").addPerson(user5);
		bankList.getBank("中国工商银行").addPerson(user6);
		bankList.getBank("中国农业银行").addPerson(user7);
		bankList.getBank
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

P-chanY

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值