当前位置: 首页 > news >正文 注册网站流程及资料网易邮箱官方网 news 2025/11/5 20:49:38 注册网站流程及资料,网易邮箱官方网,外链网站分类,媒体电商公众号#xff1a;全干开发 。 专注分享简洁但高质量的动图技术文章#xff01; 项目概述 本教程适合刚学习完java基础语法的同学#xff0c;涉及if语句、循环语句、类的封装、集合等基础概念#xff0c;使用大量gif图帮助读者演示代码操作、效果等#xff0c;是一个非常… 公众号全干开发 。 专注分享简洁但高质量的动图技术文章 项目概述 本教程适合刚学习完java基础语法的同学涉及if语句、循环语句、类的封装、集合等基础概念使用大量gif图帮助读者演示代码操作、效果等是一个非常不错的巩固练习教程不涉及任何java框架等内容可以放心食用 本教程将使用控制台模拟一个ATM取款机 基础需求演示 ATM机主要有用户开户、用户登录登录后可以转账等功能我们简单演示一下用户开户功能 系统架构 根据我们的需求我们可以知道我们的这个程序应该主要包含两个类 账户类Account包含卡号、姓名、性别、密码、余额、额度等属性ATM类代表ATM系统负责提供业务需求具备欢迎页、转账、开通账户等功能 项目搭建 创建项目 打开编译器创建名为Project_ATM的项目 创建Account类 Account类用来表示账户信息包含卡号、姓名、性别、密码、余额、额度等属性我们创建这个类并完善一些基本属性 Acount的基本属性创建完毕后我们需要给这些属性创建get和set方法用来方便快捷的更改和读取这些数值。 我们使用IDEA的快捷操作 光标放在Account类内部右键点击【Generate】点击【Getter and Setter】点住ctrl键不放选中Acoount的所有属性点击【ok】即可 生成的代码如下 public class Account {private String cardId; // 卡号private String userName; // 名称private char sex; // 性别private String passWord; // 密码private double money; // 资产private double limit; // 限额public String getCardId() {return cardId;}public void setCardId(String cardId) {this.cardId cardId;}public String getUserName() {return userName;}public void setUserName(String userName) {this.userName userName;}public char getSex() {return sex;}public void setSex(char sex) {this.sex sex;}public String getPassWord() {return passWord;}public void setPassWord(String passWord) {this.passWord passWord;}public double getMoney() {return money;}public void setMoney(double money) {this.money money;}public double getLimit() {return limit;}public void setLimit(double limit) {this.limit limit;} }创建ATM类 ATM类用来模拟ATM系统的一些功能最重要的它应该能储存不同用户的账户信息accounts并且这个账户信息应该是私有的private不能随便被访问到。 我们创建这个类并定义好所有用户的信息集合 accounts import java.util.ArrayList;public class ATM {private ArrayListAccount accounts new ArrayList(); }我们的欢迎页是在控制台显示的长下面这个样子 我们用代码实现一下这个逻辑 import java.util.ArrayList; import java.util.Scanner;public class ATM {private ArrayListAccount accounts new ArrayList();// 创建一个新的Scanner对象名为sc。Scanner对象用于获取用户键盘输入的值。private Scanner sc new Scanner(System.in);public void start(){System.out.println(欢迎您进入到了ATM系统);System.out.println(1、用户登录);System.out.println(2、用户开户);System.out.println(请选择:);// 调用nextInt()方法等待用户输入一个整数并将这个整数存储在变量command中。int command sc.nextInt();switch (command) {case 1://用户登录break;case 2://用户开户break;default:System.out.println(操作错误!);// 输入错误重新进入开始页start();}} }现在我们可以测试一下了。 创建Test类 想要验证我们的ATM功能是否ok我们需要创建个Test类验证下 public class Text {public static void main(String[] args) {// 创建atm类代表一个ATM系统ATM atm new ATM();//启动ATM系统atm.start();} }我们执行这个函数试试效果 不错很完美 开户功能完善 功能简介 开户功能就是新增一个账户也就是向系统的账户集合添加一个账户对象 这个账户对象应该包含用户输入的姓名、性别、密码及每次取现的额度信息同时还有一个系统生成的随机卡号8位数字不能重复。 生成基础信息 我们在ATM类中创建一个开户操作createAccount方法 public class ATM {private ArrayListAccount accounts new ArrayList();// 创建一个新的Scanner对象名为sc。Scanner对象用于获取用户键盘输入的值。private Scanner sc new Scanner(System.in);public void start(){// .....}// 用户开户操作private void createAccount(){} }这个createAccount方法应该做三件事儿 创建一个账户对象用于封装用户的开户信息需要用户输入自己的开户信息赋值给账户对象把这个账户对象存入到账户集合中去 第二步中我们首先需要用户输入账户名称 private void createAccount(){// 1、创建一个账户对象用于封装用户的开户信息Account account new Account();// 2、需要用户输入自己的开户信息赋值给账户对象System.out.println(请您输入您的账户名称:);String name sc.next() ;account.setUserName(name);// 3、把这个账户对象存入到账户集合中去}sc.next()用于输出字符串 然后需要用户输入性别 // 2、需要用户输入自己的开户信息赋值给账户对象// ....System.out.println(请输入性别); char sex sc.next().charAt(0); if (sex 男 || sex 女) {account.setSex(sex); } else {System.out.println(输入无效请输入男或女。); }// 3、把这个账户对象存入到账户集合中去注意我们在Account类中定义性别用的是基本类型char所以这里的sex用 char修饰。sc.next()返回的是字符串String类所以我们用charAt(0)获取到这个字符串的第一个字符将其转换成了char类型 上述代码中如果用户没有按照我们的预期输入性别我们应该让它重新输入所以需要循环这部分代码。我们借助编译器添加while循环语句选中代码点击crtlaltT选择whileif语句中我们需要终止循环 最后我们完善下其他方法 // 用户开户操作private void createAccount(){// 1、创建一个账户对象用于封装用户的开户信息Account account new Account();// 2、需要用户输入自己的开户信息赋值给账户对象System.out.println(请您输入您的账户名称:);// sc.next()用于返回字符串String name sc.next() ;account.setUserName(name);while (true) {System.out.println(请输入性别);char sex sc.next().charAt(0);if (sex 男 || sex 女) {account.setSex(sex);break;} else {System.out.println(输入无效请输入男或女。);}}while (true){System.out.println(请您输入您的账户密码:);String passWord sc.next();System.out.println(请您输入您的确认密码:);String okPassWord sc.next();// 判断2次密码是否一样。if(okPassWord.equals(passWord)) {account.setPassWord(okPassWord);break;} else {System.out.println(您输入的2次密码不一致请您确认~~);}}System.out.println(请您输入您的取现额度:);double limit sc.nextDouble();account.setLimit(limit);// 3、把这个账户对象存入到账户集合中去注卡号的生成比较复杂我们先暂时忽略 现在我们进行第三步把生成的账户对象存入到账户集合中。 // 3、把这个账户对象存入到账户集合中去 accounts.add(account); System.out.println(恭喜您 account.getUserName() 开户成功您的卡号是:);我们在Account类中完善一下getUserName方法 public String getUserName() {return userName ( sex 男 ? 先生: 女士); }OK现在我们在start方法中运行下createAccount()方法 然后再Tset类中运行程序试试看 丝滑流畅 生长卡号信息 卡号是一个8位的数字且和已有卡号不能重复它的创建分为以下几个步骤 定义一个string类型的变量记住8位数字作为一个卡号 String cardId ;使用循环循环8次每次产生一个随机数给cardId连接起来 Random r new Random(); for (int i ; i 8; i) {int data r.nextInt( bound: 10); // 0 - 9cardId data; }判断cardId中记住的卡号是否与其他账户的卡号重复了没有重复才可以做为一个新卡号返回. Account acc getAccountByCardId(cardId); if(acc null){// 说明cardId没有找到账户对象因此cardId没有与其他账户的卡号重复可以返回它做为一个新卡号return cardId; }详细代码如下 public void start(){ ... }// 用户开户操作private void createAccount(){ ... }// 返回一个8位 数字的卡号而且这个卡号不能与其他账户的卡号重复private String createCardId(){while (true) {String cardId ;Random r new Random();for (int i 0; i 8; i) {int data r.nextInt(10); // 0 - 9cardId data;}// 判断cardId中记住的卡号是否与其他账户的卡号重复了没有重复才可以做为一个新卡号返回.Account acc getAccountByCardId(cardId);if(acc null){// 说明cardId没有找到账户对象因此cardId没有与其他账户的卡号重复可以返回它做为一个新卡号return cardId;}}}// 根据卡号查询账户对象返回 accounts [c1c2c3。]private Account getAccountByCardId(String cardId){// 遍历全部的账户对象for (int i 0; i accounts.size(); i) {Account acc accounts.get(i);// 判断这个账户对象acc 中的卡号是否是我们要找的卡号if(acc.getCardId().equals(cardId)){return acc;}}return null; // 查无此账户这个卡号不存在的}get(int index)是集合特有的方法用于返回指定位置的元素Random是一个类它提供了生成各种类型的随机数的方法。nextInt(10)生成0-9之间的随机数 现在我们就可以完善开户功能了 // 用户开户操作private void createAccount(){// ...String newCard createCardId();account.setCardId(newCard);// 3、把这个账户对象存入到账户集合中去accounts.add(account);System.out.println(恭喜您 account.getUserName() 开户成功您的卡号是: newCard);}结语 至此我们的开户功能就完成了下面是开户功能的完整代码 import java.util.ArrayList; import java.util.Random; import java.util.Scanner;public class ATM {private ArrayListAccount accounts new ArrayList();// 创建一个新的Scanner对象名为sc。Scanner对象用于获取用户键盘输入的值。private Scanner sc new Scanner(System.in);public void start(){System.out.println(欢迎您进入到了ATM系统);System.out.println(1、用户登录);System.out.println(2、用户开户);System.out.println(请选择:);// 调用nextInt()方法等待用户输入一个整数并将这个整数存储在变量command中。int command sc.nextInt();switch (command) {case 1://用户登录break;case 2://用户开户createAccount();break;default:System.out.println(操作错误!);// 输入错误重新进入开始页start();}}// 用户开户操作private void createAccount(){// 1、创建一个账户对象用于封装用户的开户信息Account account new Account();// 2、需要用户输入自己的开户信息赋值给账户对象System.out.println(请您输入您的账户名称:);// sc.next()用于返回字符串String name sc.next() ;account.setUserName(name);while (true) {System.out.println(请输入性别);char sex sc.next().charAt(0);if (sex 男 || sex 女) {account.setSex(sex);break;} else {System.out.println(输入无效请输入男或女。);}}while (true){System.out.println(请您输入您的账户密码:);String passWord sc.next();System.out.println(请您输入您的确认密码:);String okPassWord sc.next();// 判断2次密码是否一样。if(okPassWord.equals(passWord)) {account.setPassWord(okPassWord);break;} else {System.out.println(您输入的2次密码不一致请您确认~~);}}System.out.println(请您输入您的取现额度:);double limit sc.nextDouble();account.setLimit(limit);String newCard createCardId();account.setCardId(newCard);// 3、把这个账户对象存入到账户集合中去accounts.add(account);System.out.println(恭喜您 account.getUserName() 开户成功您的卡号是: newCard);}// 返回一个8位 数字的卡号而且这个卡号不能与其他账户的卡号重复private String createCardId(){while (true) {String cardId ;Random r new Random();for (int i 0; i 8; i) {int data r.nextInt(10); // 0 - 9cardId data;}// 判断cardId中记住的卡号是否与其他账户的卡号重复了没有重复才可以做为一个新卡号返回.Account acc getAccountByCardId(cardId);if(acc null){// 说明cardId没有找到账户对象因此cardId没有与其他账户的卡号重复可以返回它做为一个新卡号return cardId;}}}// 根据卡号查询账户对象返回 accounts [c1c2c3。]private Account getAccountByCardId(String cardId){// 遍历全部的账户对象for (int i 0; i accounts.size(); i) {Account acc accounts.get(i);// 判断这个账户对象acc 中的卡号是否是我们要找的卡号if(acc.getCardId().equals(cardId)){return acc;}}return null; // 查无此账户这个卡号不存在的} }接下来我们会完成这个项目的另一个核心功能用户登录及登录后的转账等等功能 文章转载自: http://www.morning.lmfxq.cn.gov.cn.lmfxq.cn http://www.morning.ftznb.cn.gov.cn.ftznb.cn http://www.morning.pxwjp.cn.gov.cn.pxwjp.cn http://www.morning.nmbbt.cn.gov.cn.nmbbt.cn http://www.morning.rynqh.cn.gov.cn.rynqh.cn http://www.morning.lskyz.cn.gov.cn.lskyz.cn http://www.morning.kjrlp.cn.gov.cn.kjrlp.cn http://www.morning.dpdr.cn.gov.cn.dpdr.cn http://www.morning.yrgb.cn.gov.cn.yrgb.cn http://www.morning.jngdh.cn.gov.cn.jngdh.cn http://www.morning.yrlfy.cn.gov.cn.yrlfy.cn http://www.morning.zlrrj.cn.gov.cn.zlrrj.cn http://www.morning.ghslr.cn.gov.cn.ghslr.cn http://www.morning.mqbzk.cn.gov.cn.mqbzk.cn http://www.morning.sfzwm.cn.gov.cn.sfzwm.cn http://www.morning.gkjnz.cn.gov.cn.gkjnz.cn http://www.morning.ctswj.cn.gov.cn.ctswj.cn http://www.morning.kchwr.cn.gov.cn.kchwr.cn http://www.morning.nxzsd.cn.gov.cn.nxzsd.cn http://www.morning.txlnd.cn.gov.cn.txlnd.cn http://www.morning.rckmz.cn.gov.cn.rckmz.cn http://www.morning.jfjpn.cn.gov.cn.jfjpn.cn http://www.morning.nqmdc.cn.gov.cn.nqmdc.cn http://www.morning.gfprf.cn.gov.cn.gfprf.cn http://www.morning.cljpz.cn.gov.cn.cljpz.cn http://www.morning.bmts.cn.gov.cn.bmts.cn http://www.morning.xkyst.cn.gov.cn.xkyst.cn http://www.morning.zzbwjy.cn.gov.cn.zzbwjy.cn http://www.morning.hhskr.cn.gov.cn.hhskr.cn http://www.morning.rhmk.cn.gov.cn.rhmk.cn http://www.morning.qfkdt.cn.gov.cn.qfkdt.cn http://www.morning.kszkm.cn.gov.cn.kszkm.cn http://www.morning.dkqr.cn.gov.cn.dkqr.cn http://www.morning.wztnh.cn.gov.cn.wztnh.cn http://www.morning.dgknl.cn.gov.cn.dgknl.cn http://www.morning.klwxh.cn.gov.cn.klwxh.cn http://www.morning.gmplp.cn.gov.cn.gmplp.cn http://www.morning.xgkxy.cn.gov.cn.xgkxy.cn http://www.morning.ryznd.cn.gov.cn.ryznd.cn http://www.morning.nyqnk.cn.gov.cn.nyqnk.cn http://www.morning.qztdz.cn.gov.cn.qztdz.cn http://www.morning.tdldh.cn.gov.cn.tdldh.cn http://www.morning.kwdfn.cn.gov.cn.kwdfn.cn http://www.morning.rcdmp.cn.gov.cn.rcdmp.cn http://www.morning.bmbnc.cn.gov.cn.bmbnc.cn http://www.morning.ckfyp.cn.gov.cn.ckfyp.cn http://www.morning.qlhwy.cn.gov.cn.qlhwy.cn http://www.morning.ttfh.cn.gov.cn.ttfh.cn http://www.morning.yrpd.cn.gov.cn.yrpd.cn http://www.morning.nmkbl.cn.gov.cn.nmkbl.cn http://www.morning.thrgp.cn.gov.cn.thrgp.cn http://www.morning.dzqyn.cn.gov.cn.dzqyn.cn http://www.morning.rybr.cn.gov.cn.rybr.cn http://www.morning.nxpqw.cn.gov.cn.nxpqw.cn http://www.morning.jpmcb.cn.gov.cn.jpmcb.cn http://www.morning.cwyfs.cn.gov.cn.cwyfs.cn http://www.morning.wrlxy.cn.gov.cn.wrlxy.cn http://www.morning.bwnd.cn.gov.cn.bwnd.cn http://www.morning.kaakyy.com.gov.cn.kaakyy.com http://www.morning.pfgln.cn.gov.cn.pfgln.cn http://www.morning.lphtm.cn.gov.cn.lphtm.cn http://www.morning.ymbqr.cn.gov.cn.ymbqr.cn http://www.morning.fkgqn.cn.gov.cn.fkgqn.cn http://www.morning.zwckz.cn.gov.cn.zwckz.cn http://www.morning.xhftj.cn.gov.cn.xhftj.cn http://www.morning.pwhjr.cn.gov.cn.pwhjr.cn http://www.morning.mcpdn.cn.gov.cn.mcpdn.cn http://www.morning.bqqzg.cn.gov.cn.bqqzg.cn http://www.morning.ndlww.cn.gov.cn.ndlww.cn http://www.morning.xckqs.cn.gov.cn.xckqs.cn http://www.morning.qdrhf.cn.gov.cn.qdrhf.cn http://www.morning.brlcj.cn.gov.cn.brlcj.cn http://www.morning.hbdqf.cn.gov.cn.hbdqf.cn http://www.morning.trkhx.cn.gov.cn.trkhx.cn http://www.morning.lkcqz.cn.gov.cn.lkcqz.cn http://www.morning.ljllt.cn.gov.cn.ljllt.cn http://www.morning.sdhmn.cn.gov.cn.sdhmn.cn http://www.morning.zlhbg.cn.gov.cn.zlhbg.cn http://www.morning.wbqt.cn.gov.cn.wbqt.cn http://www.morning.qwmpn.cn.gov.cn.qwmpn.cn 查看全文 http://www.tj-hxxt.cn/news/280400.html 相关文章: 合肥网站模板建站网站方案建设书 厚街外贸网站建设公司赣州网站建设顺企网 食品营销型网站wordpress下载面板样式 企业网站的制作周期价格低质量好的广告语 网站设计应该做哪些八戒影视大全 建站公司经营重庆网站制作合作商 毕业设计商城网站开发长沙手机网站首页设计公司 搏彩网站开发建设童子营网站建设方案 做公司网站需要了解哪些东西自己做鞋子网站 开源网站模板cms红色网站 后台 自适应网站一般用什么框架做启动wordpress 美食网站html静态思帽网站建设 钓鱼网站开发系列教程wordpress样式错乱 可遇公寓网站哪个公司做的北京百度seo服务 提供盐城网站开发h5链接制作平台 dw怎么做网站小程序商店app 如何去建设一个企业网站游戏开发与网站开发哪个难 备案号 网站企业网站推广的方法包括 如何申请域名建网站2023推广平台 郑州建网站msgg做设计有必要买素材网站会员 马鞍山建设工程监督站建管处网站破解wordpress登录密码 广州网站建设推荐q479185700顶上安阳网站建设服务 宝安附近做网站公司网页制作与网站建设英文翻译 淄博网站建设同圈科技网站生成手机端 网站开发都有哪些有名的公关公司 网站建设 推广就选网沃科技工信部网站备案 怎么查名字有没有被注册商标桂林网站优化注意事项 租用微信做拍卖网站网站推广的方法有 公司 做网站公司网站制作注意事项 做一个自己的免费网站吗百度网盟推广怎么选择投放网站