首页 / JAVA / Java课堂测试01及感想
Java课堂测试01及感想
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java课堂测试01及感想,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含7537字,纯文字阅读大概需要11分钟。
内容图文
上周进行了Java的开学第一次测验,按要求做一个模拟ATM机功能的程序,实现存取款、转账汇款、修改密码、查询余额的操作。这次测验和假期的试题最大的不同还是把数组存储改成的文件存储,在听到老师说要用文件的时候,还是有种悔不当初的感觉的,假期里找的教程是有教文件的,当时想着假期给的试题仅要求数组,就偷了懒。这次测验的时候,看了一下文件的教程,不是怎么清楚怎么像题目那样使用文件,便放弃了这一部分,还是用的数组。这次测验还发现了自己的很多问题,特别是一些习惯上的问题。以前写的都是几十行的小程序,简单看下题目就知道该怎么做,而这次的测验却没那么小了。拿到题目的时候老师有叫过我们先构思,不要立刻动手,我看了题目想了一会儿,并没有很清楚的思路,只有一个模糊的想法,就开始动手,写到执行文件时就不太记得一开始的想法,写一会就看一会题目,翻翻刚写的代码,浪费了很多时间。写着写着就发现少了一些东西,又去前面加,后面都乱了。测试的时间从两个小时延长到两个半小时再到三个小时,可以说是很足了,但是我还是只实现了前面两个功能,也是和思路的混乱有关,当然更主要的是能力不足,暑假的学习太过应付了事,以后还是要努力才行,不能再贪玩了。
Account.java
1 public class Account { 2 3 private String accountID; //账号 4private String accountname; //名称 5private String operatedate; //操作时间 6privateint operatetype; 7private String accountpassword; //密码 8privateint accountbalance; //账户余额 9privateint amount; //流水金额1011public String getAccountID() { 12return accountID; 13 } 14publicvoid setAccountID(String accountID) { 15this.accountID = accountID; 16 } 17public String getAccountname() { 18return accountname; 19 } 20publicvoid setAccountname(String accountname) { 21this.accountname = accountname; 22 } 23public String getOperatedate() { 24return operatedate; 25 } 26publicvoid setOperatedate(String operatedate) { 27this.operatedate = operatedate; 28 } 29publicint getOperatetype() { 30return operatetype; 31 } 32publicvoid setOperatetype(int operatetype) { 33this.operatetype = operatetype; 34 } 35public String getAccountpassword() { 36return accountpassword; 37 } 38publicvoid setAccountpassword(String accountpassword) { 39this.accountpassword = accountpassword; 40 } 41publicint getAccountbalance() { 42return accountbalance; 43 } 44publicvoid setAccountbalance(int accountbalance) { 45this.accountbalance = accountbalance; 46 } 47publicint getAmount() { 48return amount; 49 } 50publicvoid setAmount(int amount) { 51this.amount = amount; 52 } 5354 Account( String accountID,String accountname,String accountpassword){ 55this.accountID = accountID; 56this.accountname = accountname; 57this.accountpassword = accountpassword; 58 accountbalance = 0; 59 } 6061 }
AccountManager.java
import java.util.Scanner; public class AccountManager { Scanner in = new Scanner( System.in ); Account[] acc = new Account[1000]; int i=5; int j,k; int temp = 0; publicvoid InterfaceAccount(){ acc[0] = new Account("20173445","刘**","123456"); acc[1] = new Account("20170001" ,"张三","387592"); acc[2] = new Account("20170002","李四","035432"); acc[3] = new Account("20170004","王五","830294"); acc[4] = new Account("20170005","赵六","208493"); temp=0; String accountID; System.out.println("**************************************************"); System.out.println(" 欢迎使用中国工商银行自动柜员系统"); System.out.println("**************************************************"); System.out.print(" 请输入您的账号:"); accountID = in.next(); if( accountID.length() != 8 ){ System.out.println("**************************************************"); System.out.println("该卡不是工行账号"); InterfaceAccount(); } else{ for( j=0; (j<i) && (temp==0); j++ ){ if( acc[j].getAccountID().equals( accountID )) temp = 1; } if(temp==0){ System.out.println("**************************************************"); System.out.println("该账号不存在"); InterfaceAccount(); } else{ j--; InterfacePassword(); } } } publicvoid InterfacePassword(){ String accountpassword; int h=3; System.out.println("**************************************************"); System.out.println(" 欢迎"+acc[j].getAccountname()+"使用中国工商银行自动柜员系统"); System.out.println("**************************************************"); while((h--)>0){ System.out.print(" 请输入您的密码:"); accountpassword = in.next(); if( acc[j].getAccountpassword().equals( accountpassword)){ InterfaceMain(); } else{ System.out.println("**************************************************"); System.out.println("密码输入错误"); if( h==0){ System.out.println("**************************************************"); System.out.println("该账号三次录入密码错误,该卡已被系统没收,请与工行及时联系处理"); InterfaceAccount(); } } } } publicvoid InterfaceMain(){ int operatetype; System.out.println("**************************************************"); System.out.println(" 欢迎"+acc[j].getAccountname()+"使用中国工商银行自动柜员系统"); System.out.println("**************************************************"); System.out.println(" 1、 存款;"); System.out.println(" 2、 取款;"); System.out.println(" 3、 转账汇款;"); System.out.println(" 4、 修改密码;"); System.out.println(" 5、 查询余额"); System.out.println("**************************************************"); operatetype = in.nextInt(); acc[j].setOperatetype(operatetype); switch(operatetype){ case 1:deposit();break; case 2:withdraw();break; } } publicvoid deposit(){ //存款int amount; System.out.println("**************************************************"); System.out.println(" 欢迎"+acc[j].getAccountname()+"使用中国工商银行自动柜员系统"); System.out.println("**************************************************"); System.out.println(" 请输入存款金额:"); amount = in.nextInt(); String s = String.valueOf(amount); if( s.equals("q")) InterfaceAccount(); else{ if( amount <= 0 ){ System.out.println("输入金额有误"); withdraw(); } else{ System.out.println("**************************************************"); System.out.println(" 欢迎"+acc[j].getAccountname()+"使用中国工商银行自动柜员系统"); System.out.println("**************************************************"); System.out.println(" 当前账户存款操作成功"); acc[j].setAccountbalance( acc[j].getAccountbalance()+amount ); System.out.println(" 当前账户余额为:"+acc[j].getAccountbalance()+"元"); System.out.println("**************************************************"); s = in.next(); if( s.equals("q")) InterfaceAccount(); } } } publicvoid withdraw(){ //取款int amount = 0; System.out.println("**************************************************"); System.out.println(" 欢迎"+acc[j].getAccountname()+"使用中国工商银行自动柜员系统"); System.out.println("**************************************************"); System.out.println(" 当前账户每日可以支取2万元"); System.out.println(" 1、 100元"); System.out.println(" 2、 500元"); System.out.println(" 3、 1000元"); System.out.println(" 4、 1500元"); System.out.println(" 5、 2000元"); System.out.println(" 6、 5000元"); System.out.println(" 7、 其他金额"); System.out.println(" 8、 退卡"); System.out.println(" 9、 返回"); System.out.println("**************************************************"); temp = in.nextInt(); switch(temp){ case 1:amount=100;break; case 2:amount=500;break; case 3:amount=1000;break; case 4:amount=1500;break; case 5:amount=2000;break; case 6:amount=5000;break; case 7:{ System.out.println("**************************************************"); System.out.println(" 欢迎"+acc[j].getAccountname()+"使用中国工商银行自动柜员系统"); System.out.println("**************************************************"); System.out.println(" 请输入取款金额"); amount = in.nextInt();break; } default:break; } if( amount > acc[j].getAccountbalance() ) System.out.println("账户余额不足"); else{ System.out.println("**************************************************"); System.out.println(" 欢迎"+acc[j].getAccountname()+"使用中国工商银行自动柜员系统"); System.out.println("**************************************************"); System.out.println("当前账户取款操作"+amount+"元成功"); acc[j].setAccountbalance( acc[j].getAccountbalance()+amount); System.out.println("当前账户余额为:"+acc[j].getAccountbalance()+"元"); System.out.println("**************************************************"); } if( temp == 8 ) InterfaceAccount(); if(temp==9) InterfaceMain(); } }
ATM.java
/* * 信1705-1 * 20173445 * 刘 */ public class ATM { public static void main( String[] args){ AccountManager manager = new AccountManager(); manager.InterfaceAccount(); } }
原文:https://www.cnblogs.com/gothic-death/p/9697332.html
内容总结
以上是互联网集市为您收集整理的Java课堂测试01及感想全部内容,希望文章能够帮你解决Java课堂测试01及感想所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。