ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

银行代码

2020-02-19 13:36:38  阅读:264  来源: 互联网

标签:String 代码 银行 System User println public out


package practice;

public class TestBank {
	//1、用一个数组录入用户信息
	//2、输入卡号,密码
	//3、校验是否正确
	//4、成功的话输出菜单栏,选择序号

	public static void main(String[] args) {
		Bank bank=new Bank();
		bank.initial();
		bank.welcome();;
		

	}

}

package practice;
import java.util.*;
public class Bank {
	Scanner input =new Scanner(System.in);
	User[] users=new User[5];
	int size=5;
	String no;
	//用户信息初始化(卡号,密码,姓名,身份证号,电话号,余额)
	public void initial(){
		users[0]=new User("112233445566778899","123456","tom","211073199904309999","13533789008",9000.0);
		users[1]=new User("998877665544332211","123456","marry","211073201008048979","14567329083",70000.0);
		users[2]=new User("112233445584761561","123456","jack","229078199908306574","13124567789",4000.0);
		users[3]=new User("112233445518517576","123456","rose","124567294729629462","15098765678",5000.0);
		users[4]=new User("112233445518517576","123456","rose","124567294729629462","15098765678",5000.0);
	}
	
	//欢迎界面(开户或登录)
	public void welcome(){
		
		User[] newNum=new User[users.length*2];
		System.arraycopy(users,0,newNum,0,users.length);
		users=newNum;
		String no;
		
		System.out.println("------------------------欢迎使用ATM自动银行系统-----------------------");
		System.out.println("1.开户  2.登录");
		System.out.println("请输入您的选择:");
		int choice=input.nextInt();
		Random random=new Random();
		String pre="112233445566";
		int last=(int)(Math.random()*100000)+100000;
		no=pre+last;
		switch(choice){
		case 1:
			System.out.println("您的账号为:"+no);
			System.out.println("请设置密码:");
			String password=input.next();
			System.out.println("请输入姓名:");
			String name=input.next();
			System.out.println("请输入身份证号:");
			String id=input.next();
			System.out.println("请输入手机号:");
			String phone=input.next();
			System.out.println("恭喜您,注册成功!");
			users[size]=new User(no,password,name,id,phone,0);
			size++;
			break;
		case 2:
			this.login();			
		}
		showAll();
	}
	
	
	//登录
	public void login(){
		System.out.println("请输入账号:");
		no=input.next();
		System.out.println("请输入密码:");
		String pwd=input.next();
		
		User myAccount=this.check(no, pwd);
		if(myAccount!=null){
			this.menu(myAccount);
		}else{
			System.out.println("账号或密码错误,请重新输入!");
		}
	}
	
	//核对账户密码是否正确
	public User check(String no,String pwd){
		for(int i=0;i<users.length;i++){
			if(users[i]!=null){
				if(no.equals(users[i].getCardNo())&&pwd.equals(users[i].getKeyWord())){
					return users[i];
				}
			}
		}
		return null;
	}
	
	//执行存款功能
	public void deposit(User Account){
		System.out.println("请输入存款金额:");
		double money=input.nextDouble();
		System.out.println("正在存钱中...");
		double currentBalance=Account.getBalance()+money;
		Account.setBalance(currentBalance);
		System.out.println("存款成功,当前余额为:"+currentBalance);
		
	}
	
	//执行取款功能
	public void withdrawl(User Account){
		System.out.println("请输入取款金额:");
		double money=input.nextDouble();
		System.out.println("正在取款中...");
		if(money>=0&&money<=Account.getBalance()){
			double currentBalance=Account.getBalance()-money;
			Account.setBalance(currentBalance);
			System.out.println("取款成功,当前余额为:"+currentBalance);
		}else{
			System.out.println("余额不足");
		}	
		showAll();
	}
	
	//执行转账功能
	
	
	//执行修改密码功能
	public void changeKeyword(User Account){
		System.out.println("请输入修改后的密码:");
		String currentPsw=input.next();
		for(int i=0;i<users.length;i++){
			if(users[i]!=null){
				if(users[i].getCardNo()==no){
					Account.setKeyWord(currentPsw);
				}
			}
		}
		showAll();
	}
	
	//修改预留手机号
	public void changePhone(User Account){
		showAll();
		System.out.println("请输入修改后的手机号:");
		String currentPhone=input.next();
		for(int i=0;i<users.length;i++){
			if(users[i]!=null){
				if(users[i].getCardNo()==no){
					Account.setPhone(currentPhone);
				}
			}
		}
		showAll();
	}
	
	//注销账号
	public void logout(User Account){
		for(int i=0;i<users.length;i++){
			if(users[i]!=null){
				if(users[i].getCardNo()==no){
					users[i]=users[i+1];
					size--;
				}
			}
		}
		showAll();
	}
	
	//菜单
	public void menu(User myAccount){
		int choice;
		do{
			System.out.println("------------------------欢迎使用ATM自动银行系统-----------------------");
			System.out.println("  1.存款 2.取款 3.转账 4.查询余额 5.修改密码 6.修改预留手机号 7.注销账号 0.退出   ");
			System.out.println("-----------------------------------------------------------------");
			System.out.println("请输入操作编号:");
			choice=input.nextInt();
			switch(choice){
			case 1:
				this.deposit(myAccount);break;
			case 2:
				this.withdrawl(myAccount);break;
			case 3:
				System.out.println("转账");break;
			case 4:
				System.out.println("您当前余额为:"+myAccount.getBalance());break;
			case 5:
				this.changeKeyword(myAccount);break;
			case 6:
				this.changePhone(myAccount);break;
			case 7:
				System.out.println("注销账号");break;
			case 0:
				System.out.println("退出");return;
			default:
				System.out.println("输入有误,请重新输入!");break;
			}
		}while(choice>=0&&choice<7);
	}
	public void showAll(){
		for(int i=0;i<size;i++){
			System.out.println(users[i].getCardNo()+"\t"+users[i].getKeyWord()+"\t"+users[i].getName()+"\t"+users[i].getIdentityCard()+"\t"+users[i].getPhone()+users[i].getBalance());
		}
	}

}

package practice;

public class User {
	//卡号,密码,姓名,身份证号,电话号,余额
	String cardNo;
	String keyWord;
	String name;
	String identityCard;
	String phone;
	double balance;
	
	public User(){}

	public User(String cardNo, String keyWord, String name, String identityCard, String phone, double balance) {
		super();
		this.cardNo = cardNo;
		this.keyWord = keyWord;
		this.name = name;
		this.identityCard = identityCard;
		this.phone = phone;
		this.balance = balance;
	}

	public String getCardNo() {
		return cardNo;
	}

	public void setCardNo(String cardNo) {
		this.cardNo = cardNo;
	}

	public String getKeyWord() {
		return keyWord;
	}

	public void setKeyWord(String keyWord) {
		this.keyWord = keyWord;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getIdentityCard() {
		return identityCard;
	}

	public void setIdentityCard(String identityCard) {
		this.identityCard = identityCard;
	}

	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public double getBalance() {
		return balance;
	}

	public void setBalance(double balance) {
		this.balance = balance;
	}
	
}
Y_L_Lee 发布了6 篇原创文章 · 获赞 1 · 访问量 214 私信 关注

标签:String,代码,银行,System,User,println,public,out
来源: https://blog.csdn.net/Y_L_Lee/article/details/104391505

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有