銀行卡類
public class UserCard {
private String cardNo;
private String password;
private String name;
private double money;
public UserCard(String cardNo,String password,String name)
{
this.cardNo=cardNo;
this.password=password;
this.name=name;
}
public double queryBalance()//查詢余額
{
return money;
}
public double deposit(double money)//存錢
{
return this.money+=money;
}
public double withdraw(double money)//取錢
{
if(money>this.money)
{
return 0;
}
return this.money-=money;
}
public String getCardNo() {
return cardNo;
}
public void setCardNo(String cardNo) {
this.cardNo = cardNo;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
}
ATM類
import java.util.Scanner;
/**
* Created by ttc on 17-12-29.
*/
public class ATM {
Scanner n=new Scanner(System.in);
private UserCard[] liberary=new UserCard[50];
private int index;
private UserCard currentCard;
public void atmSystem()
{
System.out.println("歡迎來到ATM自動存取款系統(tǒng)");
System.out.println("請選擇你要使用的業(yè)務");
System.out.println("--------------------");
System.out.println("1.>取款.");
System.out.println("2.>存款.");
System.out.println("3.>查詢信息.");
System.out.println("4.>密碼設置.");
System.out.println("5.>退出系統(tǒng).");
int input=n.nextInt();
if(input==1)
{
System.out.println("請輸入您要提取的現(xiàn)金:");
double withdraw=n.nextDouble();
double result=currentCard.withdraw(withdraw);
if(result==0)
{
System.out.println("余額不足");
}
else
{
System.out.println("提款成功!");
System.out.println("您當前余額為:"+currentCard.getMoney()+"元。");
}
atmSystem();
}
if(input==2)
{
System.out.println("請輸入您要儲存的現(xiàn)金:");
double deposit=n.nextDouble();
currentCard.deposit(deposit);
System.out.println("存款成功杆逗!");
System.out.println("您當前余額為:"+currentCard.getMoney()+"元磅摹。");
atmSystem();
}
if(input==3)
{
System.out.println("姓名:"+currentCard.getName());
System.out.println("卡號:"+currentCard.getCardNo());
System.out.println("余額:"+currentCard.getMoney());
atmSystem();
}
if(input==4)
{
System.out.println("請輸入舊密碼:");
String oldPassword=n.next();
if(oldPassword.equals(currentCard.getPassword()))
{
System.out.println("請輸入新密碼:");
String newPassword=n.next();
System.out.println("請再次輸入新密碼:");
String newPassword2=n.next();
if(newPassword.equals(newPassword2))
{
System.out.println("密碼修改成功!");
currentCard.setPassword(newPassword);
atmSystem();
}
else
{
System.out.println("輸入錯誤闸准,請重新輸入益愈!");
atmSystem();
}
}
else
{
System.out.println("輸入錯誤!");
atmSystem();
}
}
if(input==5)
{
System.out.println("退出程序夷家!");
}
}
public void addUserCard(UserCard userCard)
{
if(index<liberary.length)
{
liberary[index]=userCard;
index++;
}
}
public void login()
{
System.out.println("請輸入您的卡號:");
String inputID=n.next();
System.out.println("請輸入您的密碼:");
String password=n.next();
currentCard=checkCard(inputID,password);
if(currentCard!=null)
{
System.out.println("登陸成功蒸其!");
atmSystem();
}
else
{
System.out.println("賬號或密碼錯誤!");
}
}
public UserCard checkCard(String strID,String password)
{
for(int i=0;i<index;i++)
{
if(strID.equals(liberary[i].getCardNo())&& password.equals(liberary[i].getPassword()))
{
return liberary[i];
}
}
return null;
}
}
Test類
public class ATMtest {
public static void main(String[] args) {
UserCard user1=new UserCard("001","000000","小李");
user1.setMoney(2000);
ATM atm=new ATM();
atm.addUserCard(user1);
atm.login();
}
}