import java.util.ArrayList;
import java.util.Scanner;
//编写一个ATM类,负责对每一个账户对象进行管理
public class ATM {
private Scanner sc = new Scanner(System.in);
private ArrayList<Account> accounts = new ArrayList<>();
//启动ATM系统,展示欢迎界面
public void start() {
System.out.println("---欢迎您进入到ATM系统---");
System.out.println("1.用户登录");
System.out.println("2.用户开户");
System.out.println("请输入您的选择:");
int command = sc.nextInt();
switch (command) {
case 1:
System.out.println("进入登陆功能");
break;
case 2:
System.out.println("进入开户功能");
break;
default:
System.out.println("没有该操作");
}
}
//开户功能的实现
private void createAccount() {
System.out.println("---系统开户操作---");
// 步骤如下:
//
//> - 1、创建一个账户对象,用于封装用户的开户信息
Account acc = new Account();
// 2、需要用户输入自己的开户信息,赋值给账户对象
System.out.println("请输入您的账户名称:");
acc.setUserName(sc.next());
// > - 输入账户名,设置给账户对象
// > - 输入性别,如果性别是`'男'`或者`'女'`,将性别设置给账户对象;否则重新录入性别知道录入正确为止。
while (true) {
System.out.println("请输入您的性别:");
char sex = sc.next().charAt(0);
if(sex == '男' || sex == '女') {
acc.setSex(sex);
break;
}
else{
System.out.println("您输入的性别有误~只能是男或者女~");
}
}
//> - 输入账户、并且输入两次密码,只有两次密码相同,才将账户和密码设置给账户对象。
while (true) {
System.out.println("请您输入您的账户密码:");
String passWord = sc.next();
System.out.println("请您输入您的确认密码:");
String okpassWord = sc.next();
if(okpassWord.equals(passWord)) {
acc.setPassWord(okpassWord);
break;
}else {
System.out.println("您输入的2次密码不一致,请重新输入");
}
}
//> - 输入提现限额,并且设置给账户对象
System.out.println("请您输入您的取现额度:");
double limit = sc.nextDouble();
acc.setLimit(limit);
// > - 3、输出开户成功,的提示语句。
accounts.add(acc);
System.out.println("恭喜您," + acc.getUserName() + "开户成功,您的卡号是:" + acc.getCardId());
}
}
//首先可以设计一个Account类,来描述账户对象需要封装哪些数据
public class Account {
private String cardId;
private String userName;
private char sex;
private String passWord;
private double money;
private double limit; // 限额
public String getCardId() {
return cardId;
}
public void setCardId(String cardId) {
this.cardId = cardId;
}
public String getUserName() {
return userName + ( sex == '男' ? "先生" : "女士");
}
public void setUserName(String userName) {
this.userName = userName;
}
public char getSex() {
return sex;
}
public void setSex(char sex) {
this.sex = sex;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
public double getLimit() {
return limit;
}
public void setLimit(double limit) {
this.limit = limit;
}
}