大四JAVA实验(一)

写一个模拟的银行存储系统,能够实现用户的登陆,存钱,取钱,转帐等功能。必须用I/O流在DOS下实现过程。

起了个大早开始写,郁闷啊都写到11点了才出来..

虽然SIMPLE,但是也有不少收获!特别是I/O流。以前学的很不扎实,还得好好看看资料再总结下!
先把代码帖下,哈哈!

代码如下:

None.gif package  com.neusoft.test;
None.gif
ExpandedBlockStart.gifContractedBlock.gif
/**/ /*
InBlock.gif *Title 模拟实现银行存储系统
InBlock.gif *@author realsmy
InBlock.gif *2006-10-19 10:50
ExpandedBlockEnd.gif 
*/

None.gif
None.gif
import  java.io. * ;
None.gif
ExpandedBlockStart.gifContractedBlock.gif
class  ZhangHu  dot.gif {
InBlock.gif    
private String name;
InBlock.gif
InBlock.gif    
private String password;
InBlock.gif
InBlock.gif    
private int money;
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    ZhangHu(String name, 
int money) dot.gif{
InBlock.gif        
this.name = name;
InBlock.gif        
this.money = money;
ExpandedSubBlockEnd.gif    }

InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    ZhangHu(String name, String password, 
int money) dot.gif{
InBlock.gif        
this.name = name;
InBlock.gif        
this.password = password;
InBlock.gif        
this.money = money;
ExpandedSubBlockEnd.gif    }

InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    
public void setM(int a) dot.gif{
InBlock.gif        money 
= money + a;
InBlock.gif        System.out.println(
"存储了" + a + "元,帐户" + name + "尚有余额" + money + "");
ExpandedSubBlockEnd.gif    }

InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    
public void getM(int a) dot.gif{
ExpandedSubBlockStart.gifContractedSubBlock.gif        
if (a > money) dot.gif{
InBlock.gif            System.out.println(
"对不起,您的金额不足" + a + "");
ExpandedSubBlockStart.gifContractedSubBlock.gif        }
 else dot.gif{
InBlock.gif            money 
= money - a;
InBlock.gif            System.out
InBlock.gif                    .println(
"取得了" + a + "元,帐户" + name + "尚有余额" + money + "");
ExpandedSubBlockEnd.gif        }

ExpandedSubBlockEnd.gif    }

InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    
public String getName() dot.gif{
InBlock.gif        
return name;
ExpandedSubBlockEnd.gif    }

InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    
public String getPassword() dot.gif{
InBlock.gif        
return password;
ExpandedSubBlockEnd.gif    }

InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif    
public int getMoney() dot.gif{
InBlock.gif        
return money;
ExpandedSubBlockEnd.gif    }

ExpandedBlockEnd.gif}

None.gif
None.gif
//  银行模拟系统
ExpandedBlockStart.gifContractedBlock.gif
public   class  Bank_Test  dot.gif {
InBlock.gif    String name;
InBlock.gif
InBlock.gif    String password;
InBlock.gif
InBlock.gif    String pw;
InBlock.gif
InBlock.gif    
int money;
InBlock.gif
InBlock.gif    
int choose;
InBlock.gif
InBlock.gif    
int a, b;// 存取的金额,临时变量
InBlock.gif

InBlock.gif    File fl;
InBlock.gif
InBlock.gif    ZhangHu user, user2;
// 帐户对象
InBlock.gif

InBlock.gif    String toname;
// 转入帐户名
InBlock.gif

InBlock.gif    String c;
// 临时存储转入帐户密码
InBlock.gif

ExpandedSubBlockStart.gifContractedSubBlock.gif    
public Bank_Test() dot.gif{
InBlock.gif        login();
InBlock.gif        user 
= new ZhangHu(name, password, money);
ExpandedSubBlockStart.gifContractedSubBlock.gif        
while (truedot.gif{
InBlock.gif            cunqu();
ExpandedSubBlockEnd.gif        }

ExpandedSubBlockEnd.gif    }

InBlock.gif
InBlock.gif    
// 实现登陆方法login
ExpandedSubBlockStart.gifContractedSubBlock.gif
    public void login() dot.gif{
InBlock.gif        System.out.println(
"您好,欢迎光临赵家银行!请输入您的帐户号码:");
ExpandedSubBlockStart.gifContractedSubBlock.gif        
while (truedot.gif{
ExpandedSubBlockStart.gifContractedSubBlock.gif            
try dot.gif{
InBlock.gif                BufferedReader in 
= new BufferedReader(new InputStreamReader(
InBlock.gif                        System.in));
InBlock.gif                name 
= in.readLine();
ExpandedSubBlockStart.gifContractedSubBlock.gif            }
 catch (IOException e) dot.gif{
ExpandedSubBlockEnd.gif            }

InBlock.gif            fl 
= new File(name + ".txt");
InBlock.gif            
// 判断帐户是否存在
ExpandedSubBlockStart.gifContractedSubBlock.gif
            if (!fl.exists()) dot.gif{
InBlock.gif                System.out.println(
"对不起,您输入的帐户并不存在,请重新输入:");
InBlock.gif                
continue;
ExpandedSubBlockEnd.gif            }

InBlock.gif            
// 帐户存在,开始判断密码
ExpandedSubBlockStart.gifContractedSubBlock.gif
            try dot.gif{
InBlock.gif                System.out.println(
"请输入您的密码:");
InBlock.gif                BufferedReader in2 
= new BufferedReader(new InputStreamReader(
InBlock.gif                        System.in));
InBlock.gif                password 
= in2.readLine();
ExpandedSubBlockStart.gifContractedSubBlock.gif            }
 catch (IOException e) dot.gif{
ExpandedSubBlockEnd.gif            }

InBlock.gif            
// 取文件中的密码
ExpandedSubBlockStart.gifContractedSubBlock.gif
            try dot.gif{
InBlock.gif                BufferedReader reader 
= new BufferedReader(new FileReader(name
InBlock.gif                        
+ ".txt"));
InBlock.gif                pw 
= reader.readLine();
InBlock.gif                money 
= Integer.parseInt(reader.readLine());
ExpandedSubBlockStart.gifContractedSubBlock.gif            }
 catch (IOException e) dot.gif{
ExpandedSubBlockEnd.gif            }

InBlock.gif            
// 判断密码
ExpandedSubBlockStart.gifContractedSubBlock.gif
            if (password.equals(pw)) dot.gif{
InBlock.gif                System.out.println(
"登陆成功");
InBlock.gif                System.out.println(
"您的用户尚有余额" + money + "");
InBlock.gif                
break;
ExpandedSubBlockStart.gifContractedSubBlock.gif            }
 else dot.gif{
InBlock.gif                System.out.println(
"对不起,您输入的密码不正确,请重新输入帐户:");
InBlock.gif                
continue;
ExpandedSubBlockEnd.gif            }

ExpandedSubBlockEnd.gif        }

ExpandedSubBlockEnd.gif    }

InBlock.gif
InBlock.gif    
// 实现存取方法cunqu
ExpandedSubBlockStart.gifContractedSubBlock.gif
    public void cunqu() dot.gif{
InBlock.gif        System.out.println(
"请选择您要进行的操作:");
InBlock.gif        System.out.println(
"1. 存钱 2. 取钱 3. 转帐 4. 退出 ");
ExpandedSubBlockStart.gifContractedSubBlock.gif        
try dot.gif{
InBlock.gif            BufferedReader in 
= new BufferedReader(new InputStreamReader(
InBlock.gif                    System.in));
InBlock.gif            choose 
= Integer.parseInt(in.readLine());
ExpandedSubBlockStart.gifContractedSubBlock.gif        }
 catch (IOException e) dot.gif{
ExpandedSubBlockEnd.gif        }

InBlock.gif        
// 存钱
ExpandedSubBlockStart.gif
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验5 常用类(2学时) 一、实验目的 1. 熟悉Java的String、StringBuffer、Math、包装器类的使用方法。 2. 使用常用类解决一般性的应用问题。 3. 掌握JavaSE API文档的使用方法。 二、实验内容 1. 编写一个程序,输出一个字符串的大写英文字母数,小写英文字母数以及非英文字母数。(字符串可以在main方法指定) 2. 调用java.lang.Math的成员函数“public static double random()”运算下面表达式1000次,(int) (Math.random()*20+0.5),统计其生成的整数0、1、2、……、20的个数分别是多少,并输出统计结果。 3. 编写一个方法,返回一个double型的二维数组,数组的元素通过解析字符串参数获得。例如,字符串参数:“1,2;3,4,5;6,7,8”,对应的数组为: d[0,0] = 1.0 d[0,1] = 2.0 d[1,0] = 3.0 d[1,1] = 4.0 d[1,2] = 5.0 d[2,0] = 6.0 d[2,1] = 7.0 d[2,2] = 8.0 三、实验要求 完成程序设计并提交实验报告。 实验6 容器(2学时) 一、实验目的 1. 熟悉容器类库常用类的使用方法。 2. 使用常用容器类解决一般性的应用问题。 二、实验内容 1. 用HashMap模拟一个网上购物车。要求:从键盘输入5本书的名称、单价、购买数量,将这些信息存入一个HashMap,然后将该HashMap作为参数调用方法getSum(HashMap books),该方法用于计算书的总价并返回。【说明:键盘输入可以使用Scanner类】 2. 使用两个Stack类(JDK容器类库的Stack类)实现一个队列类MyQueue,提供队列的入队列和出队列操作:enQueue和deQueue。 3. 写一个彩票程序:30选7。随机(1~30之间)生成7个随机数,注意不能重复。然后从键盘输入7个数,对比7个数是否与随机数有相同的。最后显示“了几个号”。同时,如果了7个号,显示一等奖;如果了6个号,显示二等奖;如果了5个号,显示三等奖。要求:首先写出程序的实现思想,特别是程序所使用的数据结构,然后写出Java实现代码。【说明:键盘输入可以使用Scanner类】 三、实验要求 完成程序设计并提交实验报告。 实验7 流(2学时) 一、实验目的 1. 熟悉流类库各种常用流的使用方法。 2. 能够使用流类实现基本的文件读写。 二、实验内容 1. 编写程序,在控制台窗口提示输入两个整数,然后接收这两个整数,并输出它们的和。(要求:键盘输入通过流封装System.in获取,不要使用Scanner类) 2. 设计学生类Student,属性:编号(整型);姓名(字符串),成绩(整型)。编写一个程序:要求:(1)输入5个学生的姓名和成绩,将其姓名和成绩保存到data.txt;(2)然后从该文件读取数据,求得这五个学生的平均成绩。 三、实验要求 完成程序设计并提交实验报告。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值