Java仿写ATM取款机业务

利用Java语言仿写ATM的相关简单业务。

public class ATM {
	//银行保存的用户名
	String[] username=new String[] {"zhangxiaomi","zhouwenhua","李一凡","黄帆"};
	//银行各用户的手机号
	String[] phone=new String[] {"13772692021","18049188803","18591733508","18891624803"};
	//银行各用户名的密码
	String[] password=new String[] {"802380","123456","520131","942647"};
	//银行各用户银行卡的余额
	int[] balance=new int[] {18900,19250,23000,17500};
	
	
	public static void main(String[] args) {
		ATM atm=new ATM();
		
		while (true) {
			atm.login();// 登陆
		}

	}





 public void login() {
		Scanner s=new Scanner(System.in);
		//界面
		System.out.println("**************欢迎使用ABC银行*************");
		//用户信息
		String tel;
		boolean is=true;  判断当前手机验证是否正确,默认true,代表手机号需要再次输入/记录账户是否锁定
		int i;        //记录下标
		do{
			System.out.println("请输入你的手机号:");
			tel=s.next();
			
			//遍历手机号数组
			for(i=0;i<phone.length;i++) {
				if(tel.equals(phone[i])) {
					is = false;// 手机号输入结束
					break;
				}
			}		
		}while(is);            // 从这出来的is是false
		//判断密码
		String pw;
		int count = 0;    //控制密码输入次数
		do{ 
			count++;
			if(count==4) {
				is = true;
				break;
			}
			System.out.println("请输入你的密码:");
			pw=s.next();		
		}while(!pw.equals(password[i]));             // 从这如果密码也正确出来的is是false,如果不正确出来的是true
		
		if(is) {                    
			System.out.println("账户已锁定");
		}else {
			System.out.println(username[i]+"您好!");
			}
		boolean isz=true;
		
		do {
		System.out.println("1.存款"+"\t\t"+"2.取款"+"\n"+"3.修改手机号"+"\t"+"4.转账"+"\n"+"请输入你需要办理的业务:");
		int num=s.nextInt();  //需要办理的业务
		switch (num) {
		case 1:   //1。存款
			System.out.println("需要存款的金额:");
			int mone=s.nextInt();
		    sumMoney(mone,i);
		  break;
		
		case 2:   //2.取款
			System.out.println("需要取款的金额:");
			int mon=s.nextInt();
			rceMoney(mon,i);		
		  break;

		case 3:   //3.修改手机号
			System.out.println("请输入需要修改后的手机号:");
			String num1=s.next();
			modPhone(num1,i);
		break;
		
		//4.转账
		case 4:   //此刻is是false
			int j;
			do {
				System.out.println("请输入需要转入的账户:");
				String num2=s.next();
				//与数组比较是否有这个账户
				for(j=0;j<=phone.length;j++) {
					if(num2.equals(phone[j])) {
						is=true;
						break;
					}			
				}		
			}while(!is);	
			int jine;
			do{
				//如果存在就转账
				System.out.println("转账金额:");
				//判断当前账户余额是否足够
				jine=s.nextInt();
			}while(balance[i]<jine);
			tfMoney(jine, i, j);
			}
		}while (isz);
		
	} 			


//存钱
	public void sumMoney(int money,int i) {
		
		balance[i] = balance[i]+money;
		System.out.println("您现在的卡上余额为:"+balance[i]);
		
	}
	
//取钱
	public void rceMoney(int money,int i) {
		ATM atm=new ATM();
		atm.balance[i]=atm.balance[i]-money;
		System.out.println("您现在的卡上余额为:"+atm.balance[i]);
		
	}
    
//修改手机号
	    public void modPhone(String tel,int i) {
		System.out.println("修改前的手机号:"+phone[i]+"\t");
		phone[i]=tel;
		System.out.println("您现在的卡手机号为:"+phone[i]);
	}
	
//转账   一个人给另一个人转账(转账金额/转出用户/转入用户)
	public void tfMoney(int money,int zh1,int zh2) {
		        //转出
				balance[zh1]-=money;
				//转入
				balance[zh2]+=money;
				System.out.println("转出账户:"+balance[zh1]);
				System.out.println("转入账户:"+balance[zh2]);
	}

}

 

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值