大四JAVA实验(一)

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

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

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

代码如下:

package  com.neusoft.test;

/**/ /*
 *Title 模拟实现银行存储系统
 *@author realsmy
 *2006-10-19 10:50
 
*/


import  java.io. * ;

class  ZhangHu  {
    
private String name;

    
private String password;

    
private int money;

    ZhangHu(String name, 
int money) {
        
this.name = name;
        
this.money = money;
    }


    ZhangHu(String name, String password, 
int money) {
        
this.name = name;
        
this.password = password;
        
this.money = money;
    }


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


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

    }


    
public String getName() {
        
return name;
    }


    
public String getPassword() {
        
return password;
    }


    
public int getMoney() {
        
return money;
    }

}


//  银行模拟系统
public   class  Bank_Test  {
    String name;

    String password;

    String pw;

    
int money;

    
int choose;

    
int a, b;// 存取的金额,临时变量

    File fl;

    ZhangHu user, user2;
// 帐户对象

    String toname;
// 转入帐户名

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

    
public Bank_Test() {
        login();
        user 
= new ZhangHu(name, password, money);
        
while (true{
            cunqu();
        }

    }


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

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

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

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

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

        }

    }


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

        
// 存钱
        if (choose == 1{
            System.out.println(
"请输入你要存储的金额:");
            
try {
                BufferedReader in 
= new BufferedReader(new InputStreamReader(
                        System.in));
                a 
= Integer.parseInt(in.readLine());
            }
 catch (IOException e) {
            }

            user.setM(a);
            
// infile(user);

        }

        
// 取钱
        if (choose == 2{
            System.out.println(
"请输入你要取得的金额:");
            
try {
                BufferedReader in 
= new BufferedReader(new InputStreamReader(
                        System.in));
                a 
= Integer.parseInt(in.readLine());
            }
 catch (IOException e) {
            }

            user.getM(a);
            infile(user);
        }

        
if (choose == 3{
            System.out.println(
"请输入你要转入的帐户:");
            
while (true{
                
try {
                    BufferedReader in 
= new BufferedReader(
                            
new InputStreamReader(System.in));
                    toname 
= in.readLine();
                }
 catch (IOException e) {
                }

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

            }

            System.out.println(
"请输入你要转入的金额:");
            
try {
                BufferedReader in 
= new BufferedReader(new InputStreamReader(
                        System.in));
                a 
= Integer.parseInt(in.readLine());
            }
 catch (IOException e) {
            }

            user.getM(a);
            infile(user);
            
try {
                BufferedReader reader 
= new BufferedReader(new FileReader(
                        toname 
+ ".txt"));
                c 
= reader.readLine();
                b 
= Integer.parseInt(reader.readLine());
            }
 catch (IOException e) {
            }

            user2 
= new ZhangHu(toname, c, b);
            user2.setM(a);
            infile(user2);

        }

        
if (choose == 4{
            System.exit(
0);
        }

    }


    
// 存入文件
    public void infile(ZhangHu p) {
        
try {
            PrintWriter writer 
= new PrintWriter(new BufferedWriter(
                    
new FileWriter(p.getName() + ".txt")));
            writer.println(p.getPassword());
            writer.println(p.getMoney());
            writer.flush();
        }
 catch (IOException e) {
        }

    }


    
public static void main(String[] args) {
        
new Bank_Test();
    }

}



欢迎来访!^.^!
本BLOG仅用于个人学习交流!
目的在于记录个人成长.
所有文字均属于个人理解.
如有错误,望多多指教!不胜感激!

你可能感兴趣的:(大四JAVA实验(一))