中国工商银行账户管理系统完成篇含页码.docx
- 文档编号:10723356
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:25
- 大小:19.08KB
中国工商银行账户管理系统完成篇含页码.docx
《中国工商银行账户管理系统完成篇含页码.docx》由会员分享,可在线阅读,更多相关《中国工商银行账户管理系统完成篇含页码.docx(25页珍藏版)》请在冰豆网上搜索。
中国工商银行账户管理系统完成篇含页码
中国工商银行账户管理系统
本程序共有4个包:
(这4个包均在
一.账户信息数据封装,名为Account.java
package;
/**
*账户信息数据封装
*
*@authorliang.tang
*
*/
publicclassAccount{
privateStringcode;
privateStringname;
privateStringpass;
privatedoublemoney;
/**
*获得账号
*
*@return
*/
publicStringgetCode(){
returncode;
}
/**
*修改账号
*
*@paramcode
*/
publicvoidsetCode(Stringcode){
this.code=code;
}
/**
*获得名称
*
*@return
*/
publicStringgetName(){
returnname;
}
/**
*修改名称
*
*@paramname
*/
publicvoidsetName(Stringname){
this.name=name;
}
/**
*获得密码
*
*@return
*/
publicStringgetPass(){
returnpass;
}
/**
*修改密码
*
*@parampass
*/
publicvoidsetPass(Stringpass){
this.pass=pass;
}
/**
*获得金额
*
*@return
*/
publicdoublegetMoney(){
returnmoney;
}
/**
*修改金额
*
*@parammoney
*/
publicvoidsetMoney(doublemoney){
this.money=money;
}
/**
*默认构造
*/
publicAccount(){
super();
}
/**
*全参数构造
*
*@paramcode
*@paramname
*@parampass
*@parammoney
*/
publicAccount(Stringcode,Stringname,Stringpass,doublemoney){
super();
this.code=code;
this.name=name;
this.pass=pass;
this.money=money;
}
}
二.帮助输入的工具类,名为InputHelper.java
package;
import;
/**
*帮助输入的工具类
*
*@authorliang.tang
*
*/
publicclassInputHelper{
publicstaticScannerscanner=newScanner(System.in);
//测试方法
publicstaticvoidmain(String[]args){
//InputHelper.getCode();
//InputHelper.getInt();
//InputHelper.getMoney();
//InputHelper.getPassword();
"bye");
}
/**
*获得一行数据
*
*@return一行数据
*/
publicstaticStringgetLine(){
returnscanner.nextLine();
}
/**
*获得一个有效的银行账号6225开始,总长度8,全是数字
*
*@return银行账号
*/
publicstaticStringgetCode(){
Stringline;
do{
//获得一行数据并截断空格
line=getLine().trim();
//判断长度是否为8位
if(line.length()!
=8){
"长度不符合要求,请输入8位数字:
");
continue;
}
//判断是否以6225开始
if(!
line.startsWith("6225")){
"请输入以6225开始的8位数字:
");
continue;
}
//判断是否为数字
try{
Integer.parseInt(line);
}catch(Exceptione){
"请输入以6225开始的8位数字:
");
continue;
}
//跳出循环
break;
}while(true);
returnline;
}
/**
*有效的密码6位的数字
*
*@return密码
*/
publicstaticStringgetPassword(){
Stringline;
do{
//获得一行数据并截断空格
line=getLine().trim();
//判断长度是否为6位
if(line.length()!
=6){
"长度不符合要求,请输入6位数字:
");
continue;
}
//判断是否为数字
try{
Integer.parseInt(line);
}catch(Exceptione){
"类型不符合要求,请输入6位数字:
");
continue;
}
//跳出循环
break;
}while(true);
//返回数据
returnline;
}
/**
*获得有效的金额大于0的数字
*
*@return
*/
publicstaticdoublegetMoney(){
Stringline;
doublemoney=0;
do{
//获得一行数据并截断空格
line=getLine().trim();
//判断是否为数字
try{
money=Double.parseDouble(line);
}catch(Exceptione){
"请输入金额数字:
");
continue;
}
//该数字是否大于0
if(money>0)
//跳出循环
break;
else{
"请输入金额大于0的数字:
");
continue;
}
}while(true);
returnmoney;
}
/**
*获得整数
*
*@return
*/
publicstaticintgetInt(){
Stringline;
intnumber=0;
do{
//输入一行数据并截断空格
line=getLine().trim();
//判断是否为数字
try{
number=Integer.parseInt(line);
}catch(Exceptione){
"请输入整数数字:
");
continue;
}
//跳出循环
break;
}while(true);
//返回数据
returnnumber;
}
}
三.银行业务类,名为BankBiz.java
package;
/**
*银行业务类
*
*@authorliang.tang
*
*/
publicclassBankBiz{
Account[]accounts=newAccount[100];
/**
*开户
*
*@paramaccount
*账户信息
*@return是否成功,成功返回true,失败返回false
*/
publicbooleanadd(Accountaccount){
//检查账号是否已经存在
for(inti=0;i if(accounts[i]! =null &&accounts[i].getCode().equals(account.getCode())){ "账户已经存在! "); returnfalse; } } for(inti=0;i //查找一个空位置,进行插入 if(accounts[i]==null){ accounts[i]=account; returntrue; } } //循环完都没有插入,则返回失败 "账户已满,无法加入任何账户! "); returnfalse; } /** *存钱 * *@paramcode *账号 *@parammoney *金额 *@return是否成功,成功返回true,失败返回false */ publicbooleansaveMoney(Stringcode,doublemoney){ //根据账号查找账户信息 Accountaccount=null; for(inti=0;i if(accounts[i]! =null&&accounts[i].getCode().equals(code)){ account=accounts[i]; } } //判断是否找到 if(account==null){ "账号不存在! "); returnfalse; }else{ //将原来的金额加上要存的金额 money+=account.getMoney(); //修改账户的金额信息 account.setMoney(money); returntrue; } } /** *取钱 * *@paramcode *账号 *@parampassword *密码 *@parammoney *金额 *@return0正常;1账号不对;2密码不对;3钱不够 */ publicinttakeMoney(Stringcode,Stringpassword,doublemoney){ //根据账号查找账户信息 Accountaccount=null; for(inti=0;i if(accounts[i]! =null&&accounts[i].getCode().equals(code)){ account=accounts[i]; } } //判断是否找到 if(account==null){ //账号不对 return1; }elseif(! account.getPass().equals(password)){ //密码不对 return2; }elseif(account.getMoney() //钱不够 return3; }else{ //将原来的金额减去要取的金额 money=account.getMoney()-money; //修改账户的金额信息 account.setMoney(money); return0; } } /** *转账 * *@paramcodeOut *转出账号 *@paramcodeIn *转入的账号 *@parampassword *转出账号的密码 *@parammoney *转出的金额 *@return0正常;1账号不对;2密码不对;3钱不够 */ publicinttransfer(StringcodeOut,StringcodeIn,Stringpassword, doublemoney){ //根据转出账号查找账户信息 AccountaccountOut=null; for(inti=0;i if(accounts[i]! =null&&accounts[i].getCode().equals(codeOut)){ accountOut=accounts[i]; } } //根据转入账号查找账户信息 AccountaccountIn=null; for(inti=0;i if(accounts[i]! =null&&accounts[i].getCode().equals(codeIn)){ accountIn=accounts[i]; } } //判断是否找到 if(accountOut==null||accountIn==null){ //账号不对 return1; }elseif(! accountOut.getPass().equals(password)){ //密码不对 return2; }elseif(accountOut.getMoney() //钱不够 return3; }else{ //修改转出账户的金额信息 doubletemp=accountOut.getMoney()-money; accountOut.setMoney(temp); //修改转入账户的金额信息 temp=accountIn.getMoney()+money; accountIn.setMoney(temp); return0; } } /** *查询 * *@paramcode *账号 *@parampassword *密码 *@returntrue查询成功;false查询失败 */ publicvoidcheckMoney(Stringcode,Stringpassword){ //根据账号查找账户 Accountaccount=null; for(inti=0;i if(accounts[i]! =null&&accounts[i].getCode().equals(code)){ account=accounts[i]; } } //判断是否找到 if(account==null){ "不存在这个账户! "); }else{ //判断密码是否正确 if(account.getPass().equals(password)){ //若正确,则显示账户信息 code=account.getCode(); Stringname=account.getName(); doublemoney=account.getMoney(); "**********************************"); "账号: "+code); "姓名: "+name); "余额: "+money); }else "密码错误! "); } } } 四.银行管理系统界面,该包的文件名为BankUI.java package; /** *银行管理系统界面 * *@authorliang.tang * */ publicclassBankUI{ BankBizbiz=newBankBiz(); //启动入口 publicstaticvoidmain(String[]args){ BankUIbankUI=newBankUI(); bankUI.mainMenuUI(); } /** *主菜单 */ publicvoidmainMenuUI(){ do{ //1.打印系统信息 "**********************************"); "*中国工商银行*"); "*账户管理系统*"); "*V1.0*"); "**********************************"); //2.打印主菜单 "*1.开户*"); "*2.存钱*"); "*3.取钱*"); "*4.转账*"); "*5.查询*"); "*6.Bye! *"); "*************************************"); //3.选择菜单 "*请选择: "); intmenu=InputHelper.getInt(); //4.业务判断操作 work(menu); }while(true); } /** *业务判断操作 * *@parammenu *选择的菜单号码 */ publicvoidwork(intmenu){ switch(menu){ case1: openAccountUI(); break; case2: saveMoneyUI(); break; case3: takeMoneyUI(); break; case4: transferUI(); break; case5: checkMoneyUI(); break; case6: "感谢你的使用,再见! "); System.exit(0); default: "请输入正确的号码【1-6】"); break; } } /** *开户界面 */ publicvoidopenAccountUI(){ "**********************************"); "当前业务: 开户"); //1.收集数据 "请输入账号: "); Stringcode=InputHelper.getCode(); "请输入名称: "); Stringname=InputHelper.getLine(); "请输入密码: "); Stringpassword=InputHelper.getPassword(); "请输入金额: "); doublemoney=InputHelper.getMoney(); //2.封装数据 Accountaccount=newAccount(code,name,password,money); //3.业务处理 booleanresult=biz.add(account); //4.显示结果 if(result==true){ "开户成功! "); }else{ "开户失败! "); } } /** *存钱界面 */ publicvoidsaveMoneyUI(){ "**********************************"); "当前业务: 存钱"); //1.收集数据 "请输入账号: "); Stringcode=InputHelper.getCode(); "请输入金额: "); doublemoney=InputHelper.getMoney(); //2.业务处理 booleanresult=biz.saveMoney(code,money); //3.显示结果 if(result==true){ "存钱成功! "); }else{ "存钱失败! "); } } /** *取钱界面 */ publicvoidtakeMoneyUI(){ "**********************************"); "当前业务: 取钱"); //1.收集数据 "请输入账号: "); Stringcode=InputHelper.getCode(); "请输入密码: "); Stringpassword=InputHelper.getPassword(); "请输入金额: "); doublemoney=InputHelper.ge
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中国工商银行 账户 管理 系统 完成 页码