为了账号安全,请及时绑定邮箱和手机立即绑定

求助大神,这个Java银行小程序为什么运行出错??

求助大神,这个Java银行小程序为什么运行出错??

慕瓜9785990 2016-10-07 15:13:45
package entity; public class Account { private static long id=100000; private String password; private String name; private String personld; private double balance; public Account(){ System.out.println("Account无参构造方法!"); } public Account(String p,String n,String pe,double b){ password=p; name=n; personld=pe; balance=b; id++; } public void setPassword(String s){ password=s; } public String getPassword(){ return password; } public void setName(String n){ name=n; } public String getName(){ return name; } public void setPersonld(String pe){ personld=pe; } public String getPersonld(){ return personld; } public void setBalance(double b){ balance=b; } public double getBalance(){ return balance; } public long getId(){ return id; } public void deposit(double b){ balance+=b; } public void withdraw(double b){ if(b>balance){ System.out.println("账户余额不足!请充值!"); } else{ balance-=b; } } } package biz; import entity.Account; public class Bank {  Account a[]=new Account[20];  int number=0; //用户开户方法 public long openAccount(String p,String p1,String n,String pe,double b){ Account acc=null; if(p.equals(p1)){                   acc =new Account(p,n,pe,b);  } else{ System.out.println("两次密码输入不一致!"); } if(number>=a.length){ Account aplus[]=new Account[a.length*3]; System.arraycopy(a, 0, aplus, 0, a.length); a=aplus; a[number]=acc; number++; System.out.println("创建一个新的更大数组!"); }    else{ a[number]=acc; number++;   } return acc.getId(); } //用户登录方法 public long landAccount(long id,String p){ //Account acc=null; for(int i=0;i<number;i++){ if(a[i].getId()==id&&p.equals(a[i].getPassword())){ System.out.println("登录成功!"); return a[i].getId(); } else{ System.out.println("没有找到账户!"); } }  return 0; } //用户存款方法 public void depositAccount(long id,double b){ for(int i=0;i<number;i++){ if(id==a[i].getId()){ a[i].setBalance(b); System.out.println("存款成功"); break; } else{ System.out.println("没有找到该账户"); } } } //用户取款方法 public void withdrawAccount(long id,double b){ for(int i=0;i<number;i++){ if(id==a[i].getId()){ a[i].withdraw(b); System.out.println("取款成功"); } else{ System.out.println("没有找到该账户"); } } } //查询余额方法 public double inquiryAccount(long id){ for(int i=0;i<number;i++){ if(id==a[i].getId()){ return a[i].getBalance(); } else{ System.out.println("没有找到该账户"); } } return 0; } public static void main(String args[]){ Bank a=new Bank(); long addc=a.openAccount("1234", "1234", "asd", "54321", 123.43); System.out.println(addc); long add=a.openAccount("123", "123", "asd", "54321", 123.43); System.out.println(add); //long ac=a.openAccount("1235", "1235", "asd", "54321", 123.43); //System.out.println(ac); //long dd=a.openAccount("1236", "1236", "asd", "54321", 123.43); //System.out.println(dd); //long sdd=a.openAccount("1237", "1237", "asd", "54321", 123.43); //System.out.println(sdd); long bs=a.landAccount(100001, "1234"); System.out.println(bs); a.depositAccount(100001, 200); System.out.println("余额为: "+a.inquiryAccount(100001)); a.withdrawAccount(100001, 100); System.out.println("余额为: "+a.inquiryAccount(100001)); }      }
查看完整描述

1 回答

?
慕瓜9785990

TA贡献3条经验 获得超0个赞

是不是对象数组那错了。。

查看完整回答
反对 回复 2016-10-07
  • 1 回答
  • 1 关注
  • 1357 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信