
没有对比就没有伤害,好几天没有更新了,是因为小编在疯狂的“拿'别人的代码。
话不多说上代码
需求是用户注册,判断用户民格式是否符合要求,如果不符合就抛出异常
先看看自己的代码
package Absttact.com.java.Exception; import java.util.Scanner; //异常练习 //要求是判断用户名是否在(6-16)位数字之间,在通过,不在报出异常 //异常结束后程序不结束继续输入用户名直到格式正确 //输入密码 //打印用户名和密码 public class OprationExceptiontest01 { static { System.out.println("============================"); System.out.println("=============注册用户========"); System.out.println("============================="); } public static void main(String [] agrs) { //创建输入对象 Scanner sc=new Scanner(System.in); System.out.println("输入长度在[6-16]位的用户名"); //创建一个使用者对象 UserInput zhangsan =new UserInput(); //判断是否符和要求 //需要循环判断 //获取字符串 try { zhangsan.Handlerusername(zhangsan); } catch (OprationException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); while(true){ System.out.println("请重新输入"); //输入用户 zhangsan.setName( sc.next()); //将用户名转位数组字符串判断长度是不是符合要求 char [] username =zhangsan.getName().toCharArray(); //符和输入成功,不符号就重写 if(username.length<6||username.length>16) { System.out.println("用户名格式不符合要求"); System.out.println("请重新输入长度在[6-16]位的用户名"); } if(username.length>=6&&username.length<=16) break; } } //输入密码 System.out.println("输入长度在[8-16]位的密码"); try { zhangsan.HandleruserPossword(zhangsan); } catch (OprationException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); while(true) { System.out.println("请重新输入"); //输入密码 zhangsan.setPossword( sc.next()); //将用户名转位数组字符串判断长度是不是符合要求 char [] userPossword =zhangsan.getPossword().toCharArray(); //符和输入成功,不符号就重写 if(userPossword.length<8||userPossword.length>16) { System.out.println("密码名格式不符合要求"); System.out.println("请重新输入长度在[8-16]位的密码"); } if(userPossword.length>=8&&userPossword.length<=16) break; } } //输出信息 System.out.println("用户名是和密码是: "); System.out.println( "用户名"+zhangsan.getName()); System.out.println( "密码"+ zhangsan.getPossword()); } } //用户类 class UserInput{ private String name; private String possword; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPossword() { return possword; } public void setPossword(String possword) { this.possword = possword; } public void Handlerusername( UserInput zhangsan) throws OprationException { while(true) { Scanner sc=new Scanner(System.in); //输入用户 zhangsan.setName( sc.next()); //将用户名转位数组字符串判断长度是不是符合要求 char [] username =zhangsan.getName().toCharArray(); //符和输入成功,不符号就重写 if(username.length<8||username.length>16) { throw new OprationException("用户名格式不符合要求"); } if(username.length>=8&&username.length<=16) break; } } public void HandleruserPossword( UserInput zhangsan) throws OprationException { while(true) { Scanner sc=new Scanner(System.in); //输入用户 zhangsan.setPossword( sc.next()); //将用户名转位数组字符串判断长度是不是符合要求 char [] userPossword =zhangsan.getPossword().toCharArray(); //符和输入成功,不符号就重写 if(userPossword.length<6||userPossword.length>16) { throw new OprationException("密码格式不符合要求"); } if(userPossword.length>=6&&userPossword.length<=16) break; } } } //自定义异常 class OprationException extends Exception{ OprationException(){ } OprationException(String s){ super(s); } }
运行结果
别人的代码
不说什么了,懂得都懂,java的世界太神奇,小编只是一个小垃圾,接着加油吧!
这些不是小编的自暴自弃喔,算是小编的自嘲吧
如果有友友看完了这个博客,谢谢你的浏览喔。要加油学习喔,不然会像小编一样几百号的垃圾代码比不上别人几行代码!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)