模拟银行存取款业务 java
实训题5:模拟银行存取款业务
实训目的:本项目的主要功能是模拟银行的存取款业务,当用户登录时需判断银行卡号和银行卡密码,当输入的卡号和密码都正确时,登录成功,提示当前登录的账户名,并进入下一步选择操作类型。操作类型包括四种(存款、取款、余额、退出),选择存款或取款时,将进行存取款操作,此时需要输入存取的金额,并进行正确的金额加减计算;选择余额时,显示当前账户的余额;输退出时将退出整个系统。项目流程图如下:
余额忘记用文件保存了,先把代码贴上来吧
package exam5;import java.awt.*;
import java.io.*;import javax.swing.*;public class Bank
{static int temp=10000;static int tm=0;/*filename.createNewFile()File filename=new File("D:\\Eclipse Workspace\\Training\\user\\"+shuru1.getText()+"\\name.txt");fileID.mkdirs();File fileID=new File("D:\\Eclipse Workspace\\Training\\user\\"+shuru1.getText());if(!fileID.exists())*/private static void createAndShowGUI(){JFrame f =new JFrame("中国银行");f.setSize(730, 500);f.setLocation(400,300);JTextArea showArea = new JTextArea(1,35);f.setResizable(true);//窗口是否可以尺寸大小f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JLabel l1 = new JLabel();//l1标签ImageIcon icon = new ImageIcon("D:\\Eclipse Workspace\\Training\\img\\1.jpg"); l1.setIcon(icon);//l1为图片标签JButton b1 = new JButton("登 录");JButton b2 = new JButton("退 出");JButton b3 = new JButton("注 册");JPanel panel = new JPanel(); JLabel zhanghao = new JLabel("账号:");JLabel mima = new JLabel("密码:");JTextArea ja=new JTextArea(2,10);JTextField shuru1= new JTextField (20);JTextField shuru2= new JTextField (20); panel.add(zhanghao);panel.add(shuru1);panel.add(mima);panel.add(shuru2);panel.add(b1);panel.add(b3);panel.add(b2);panel.add(showArea);panel.add(ja); f.add(l1,BorderLayout.PAGE_START); f.add(panel,BorderLayout.CENTER);f.setVisible(true); b1.addActionListener(e ->{ String yonghu = "D:\\Eclipse Workspace\\Training\\user\\user.txt"; String key = "D:\\Eclipse Workspace\\Training\\user\\key.txt";//@SuppressWarnings("unused")String content1 = shuru1.getText();//@SuppressWarnings("unused")String content2 = shuru2.getText();try(FileReader reader1 = new FileReader(yonghu);FileReader reader2 = new FileReader(key); BufferedReader br1 = new BufferedReader(reader2); BufferedReader br = new BufferedReader(reader1)){String line;String line1;line1=br1.readLine();while ((line=br.readLine()) != null) {if((line.equals(content1))&&(line1.equals(content2))){f.setVisible(false); denglu();}elseshowArea.append("用户名或密码输入错误");}}catch (IOException e1) {e1.printStackTrace();}});b2.addActionListener(e ->{System.exit(0);});b3.addActionListener(e ->{panel.removeAll();//移除布局JLabel zhanghao1 = new JLabel("账号:");JLabel mima1 = new JLabel("密码:"); JTextField shuru3= new JTextField (20);JTextField shuru4= new JTextField (20); JButton zhuce = new JButton("完 成");JButton back = new JButton("返 回");panel.add(zhanghao1);panel.add(shuru3);panel.add(mima1);panel.add(shuru4);panel.add(zhuce);panel.add(back);panel.validate();//刷新panel.repaint();//重画zhuce.addActionListener(g ->{String content1 = shuru3.getText();//获取注册名字String content2 = shuru4.getText();//获取注册密码File fp=new File("D:\\Eclipse Workspace\\Training\\user\\user.txt");try {PrintWriter pfp = new PrintWriter(fp);pfp.print(content1);pfp.close();} catch (FileNotFoundException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}//BufferedReader bu = new BufferedReader(new InputStreamReader());File fp1=new File("D:\\Eclipse Workspace\\Training\\user\\key.txt");try {PrintWriter pfp = new PrintWriter(fp1);pfp.print(content2);pfp.close();} catch (FileNotFoundException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}});back.addActionListener(w ->{panel.removeAll();//移除布局panel.add(zhanghao);panel.add(shuru1);panel.add(mima);panel.add(shuru2);panel.add(b1);panel.add(b3);panel.add(b2);panel.add(showArea); f.add(l1,BorderLayout.PAGE_START); f.add(panel,BorderLayout.CENTER);f.setVisible(true);panel.validate();//刷新panel.repaint();//重画});});
}private static void denglu()
{JFrame f =new JFrame("中国银行");f.setSize(580, 500);f.setLocation(400,300);JTextArea showArea = new JTextArea(50,50);JLabel l1 = new JLabel();//l1标签ImageIcon icon = new ImageIcon("D:\\Eclipse Workspace\\Training\\img\\2.jpg"); l1.setIcon(icon);f.setResizable(true);//窗口是否可以尺寸大小f.setVisible(true);JTextField input = new JTextField(20);f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JLabel label = new JLabel("欢迎,请在选择你需要的操作");JButton b1 = new JButton("存 款");JButton b2 = new JButton("取 款");JButton b3 = new JButton("余 额");JButton b4 = new JButton("退 出");JPanel panel = new JPanel();f.add(panel);panel.add(l1);panel.add(label);panel.add(b1);panel.add(b2);panel.add(b3);panel.add(b4);panel.add(input);panel.add(showArea);b1.addActionListener(e ->//存款{String tem = input.getText();if((tem!=null) && (!tem.trim().equals(""))){ int j= Integer.parseInt( tem);temp=temp+j;showArea.setText(" ");showArea.append("存款成功,当前余额为"+temp+"!"); }else{ showArea.setText(" ");showArea.append("错误!重输!");}input.setText("");});b2.addActionListener(w ->//取款{ String tem = input.getText();if((tem!=null) && (!tem.trim().equals(""))){int j= Integer.parseInt( tem);if(j>temp){showArea.setText(" ");showArea.append("你哪有这么多的钱来取哦!"); }else{temp=temp-j;showArea.setText(" ");showArea.append("取款成功,当前余额为"+temp+"!"); }}else{ showArea.setText(" ");showArea.append("错误!重输!");}input.setText("");});b3.addActionListener(w ->{ showArea.setText(" ");showArea.append("当前余额为"+temp+"!\n");});b4.addActionListener(w ->{ f.setVisible(false);createAndShowGUI(); });}
private static void setDefaultCloseOperation(int disposeOnClose) {// TODO Auto-generated method stub}public static void main (String[] args)
{ SwingUtilities.invokeLater(Bank::createAndShowGUI);
}
}
模拟银行存取款业务 java相关推荐
- java模拟银行存取_JAVA基础案例 模拟银行存取款业务
模拟银行存取款业务 编写一个Java应用程序,模拟网上银行登录及存取款业务.登录时需判断银行卡号和银行卡密码,当输入的卡号和密码都正确时,登录成功,提示当前登录的账户名,并进入下一步选择操作类型.操作 ...
- java实验报告之模拟银行存取款业务
一个不知名大学生,江湖人称菜狗 original author: jacky Li Email : 3435673055@qq.com Time of completion:2022.12.20 La ...
- java模仿银行账务业务_Java基础案例 - 模拟银行存取款业务
博学谷--让IT教学更简单,让IT学习更有效 模拟银行存取款业务 编写一个Java应用程序,模拟网上银行登录及存取款业务.登录时需判断银行卡号和银行卡密码,当输入的卡号和密码都正确时,登录成功,提示当 ...
- 模拟银行存款java,模拟银行存取款业务
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 public class Account { // 初始化存款 float count = 0f;// 当前账户余额 int money1;// 存款数, ...
- 基于Java语言实现模拟银行存取款业务系统
资源下载地址:https://download.csdn.net/download/sheziqiong/85820969 1.项目简介 本项目的主要功能是模拟银行的存取款业务,当用户登录时需判断银行 ...
- 模拟银行存取款业务 简要代码
本项目的主要功能是模拟银行的存取款业务,当用户登录时需判断银行卡号和银行卡密码,当输入的 卡号和密码都正确时,登录成功,提示当前登录的账户名,并进入下一步选择操作类型.操作类型包括四种(存款:1取款: ...
- python代码设计测试用例_[CP_01] Python循环结构案例:模拟银行存取款业务,设计执行测试用例...
目录结构 一.案例描述 二.需求分析 1. 业务流程图 2. 业务项&测试场景 三.代码实现 四.用例设计&执行(简化模式) 1. 登录业务 2. 存款业务 3. 取款业务 4. 退卡 ...
- 模拟银行存取款业务(GUI版)
一.实验目的 (1)全面检验面向对象编程思想,巩固Java面向对象.集合和常用API类等方面知识的应用: (2)加强实践动手能力,能够将从书本上学习到的理论知识用到了实践上. 二.实验内容 模拟网上银 ...
- java银行业务_java模拟银行存取款业务
//创建基接口BankAccount,包含 存款方法playIn(),取款方法withdraw(),查询余额方法getBalance(). interfaceBankAccount{void play ...
最新文章
- 学C++走游戏方向,是不是非常艰难自找苦吃?
- Ceph mon节点故障处理案例分解
- 【错误记录】创建密钥报错 ( Key was created with errors: Warning: JKS 密钥库使用专用格式。建议使用 “ keyto “ 迁移到行业标准格式 PKCS12 )
- JZOJ 5182. 【NOIP2017提高组模拟6.29】码灵鼠
- ROS学习—opencv使用之图片传输
- 使用Spring Boot Operator部署SpringBoot到K8S
- flask response Content-Type
- 5Python全站之路系列之MySL连表查询
- 科大讯飞语音转文字_科大讯飞推出TWS真无线耳机:主打商务沟通,实时语音转文字...
- NGINX api网关(mark 有空填坑)
- 2018年5大微服务发展趋势
- 前后端分离,nginx解决跨域问题
- python实现音乐播放器_【原创源码】用Python来实现一个简易的MP3播放器(采用酷我接口,包含接口分析)...
- 钟平---逻辑英语的语法讲解
- C# 判断本机是否安装Excel及多版本安装?获取Excel进程信息和打开Excel应用软件
- Flink checkpoint机制以及恢复
- jQuery_删除及清空节点
- C#毕业设计——基于C#+asp.net+sqlserver的搜索引擎设计与实现(毕业论文+程序源码)——搜索引擎
- 平板电脑取代PC是大势所趋?
- RabbitMQ-客户端源码之ChannelManager