简易的ATM机

116 篇文章 22 订阅

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)

package lovo;

import java.io.FileReader;
import java.io.FileWriter;
import java.util.Properties;

import javax.swing.JOptionPane;

public class BankAtm {
 public Properties pro = new Properties();
 
 public BankAtm(){
 try{
  pro.load(new FileReader("BankTest.txt"));
 }catch(Exception e){
  System.out.println("没有找到文件");
 }
 boolean isLogin=login();
 if(isLogin==false){
  System.exit(0);
 }
 while(true){
  String str = JOptionPane.showInputDialog(null,
    "1、存款\n2、取款\n3、查询余额\n4、改密\n5、退出");
  int item = Integer.parseInt(str);
  switch(item){
  case 1:
   addMoney();
   break;
  case 2:
   delMoney();
   break;
  case 3:
   findMoney();
   break;
  case 4:
   changePwd();
   break;
  case 5:
   System.exit(0);
  }
 }
 
 }
 /*
  * 改密
  */
 private void changePwd() {
  String str1=JOptionPane.showInputDialog(null,"请输入新密码");
  String str2=JOptionPane.showInputDialog(null,"请确认新密码");
  if(str1.equals(str2)){
   this.pro.setProperty("pwd", str1);
   this.save();
  }
  else{
   JOptionPane.showMessageDialog(null, "两次输入的密码不一致");
  }
  
 }
/*
 * 保存数据
 */
 private void save() {
  try{
   this.pro.store(new FileWriter("BankTest.txt"), null);
  }catch(Exception e){
   System.out.println("文件不存在");
  }
 }
/*
 * 查询余额
 */
 private void findMoney() {
  JOptionPane.showMessageDialog(null, "余额为:"+this.pro.getProperty("money"));
  
 }
/*
 * 取款
 */
 private void delMoney() {
  String str=JOptionPane.showInputDialog(null,"请输入取款金额");
  int a=Integer.parseInt(str);
  int y=Integer.parseInt(this.pro.getProperty("money"));
  if(a>y){
   JOptionPane.showMessageDialog(null, "卡上余额不足");
   return;
  }
  y=y-a;
  this.pro.setProperty("money", y+"");
  this.save();
  
 }
 
/*
 * 存款
 */
 private void addMoney() {
  String str=JOptionPane.showInputDialog(null,"请输入存款金额");
  int a=Integer.parseInt(str);
  int b=Integer.parseInt(this.pro.getProperty("money"));
  a=a+b;
  this.pro.setProperty("money", a+"");
  this.save();
 }

/*
 * 登陆
 */
 public boolean login() {
  for(int i=0;i<3;i++){
  String str1=JOptionPane.showInputDialog(null,"请输入用户名");
  String str2=JOptionPane.showInputDialog(null,"请输入密码");
  if(str1.equals(this.pro.getProperty("userName"))
    &&str2.equals(this.pro.getProperty("pwd")))
  {
   return true; 
  }else{
   JOptionPane.showMessageDialog(null, "用户名或密码错误");
  }
 }return false;
  }

 public static void main(String[] args) {
  BankAtm a = new BankAtm();
 }

}



 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

u010142437

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

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

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

打赏作者

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

抵扣说明:

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

余额充值