java 判断用户名_java判断用户名和密码的方法
java判断用户名和密码的方法
发布时间:2020-04-28 11:18:51
来源:亿速云
阅读:122
作者:小新
今天小编给大家分享的是java判断用户名和密码的方法,相信很多人都不太了解,为了让大家更加了解java判断用户名和密码的方法,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。
java如何判断用户名和密码?Java验证用户名和密码
假设在某仓库管理系统的登录界面中需要输入用户名和密码,其中用户名只能由 6~10 位数字组成,密码只能有 6 位,任何不符合用户名或者密码要求的情况都视为异常,并且需要捕获并处理该异常。
下面使用自定义异常类来完成对用户登录信息的验证功能,实现步骤如下。
(1) 编写自定义异常类 LoginException,该类继承自 Exception。在 LoginException 类中包含两个构造方法,分别为无参的构造方法和含有一个参数的构造方法,代码如下:
public class LoginException extends Exception
{
public LoginException()
{
super();
}
public LoginException(String msg)
{
super(msg);
}
}
(2) 创建测试类 Test08,在该类中定义 validateLogin() 方法,用于对用户名和密码进行验证。当用户名或者密码不符合要求时,使用自定义异常类 LoginException 输出相应的异常信息。validateLogin() 方法的定义如下:public boolean validateLogin(String username,String pwd)
{
boolean con=false; //用户名和密码是否正确
boolean conUname=false; //用户名格式是否正确
try
{
if(username.length()>=6&&username.length()<=10)
{
for(int i=0;i
{
char ch=username.charAt(i); //获取每一个字符
if(ch>='0'&&ch<='9')
{ //判断字符是否为0~9的数字
conUname=true; //设置 conUname 变量值为 true
}
else
{ //如果字符不是0~9的数字,则拋出LoginException异常
conUname=false;
throw new LoginException("用户名中包含有非数字的字符!");
}
}
}
else
{ //如果用户名长度不在6~10位之间,拋出异常
throw new LoginException("用户名长度必须在6〜10位之间!");
}
if(conUname)
{ //如果用户名格式正确,判断密码长度
if(pwd.length()==6)
{ //如果密码长度等于6
con=true; //设置con变量的值为true,表示登录信息符合要求
}
else
{ //如果密码长度不等于6,拋出异常
con=false;
throw new LoginException("密码长度必须为 6 位!");
}
}
}
catch(LoginException e)
{ //捕获 LoginException 异常
System.out.println(e.getMessage());
}
return con;
}
(3) 在 Test08 类中添加 main() 方法,调用 validateLogin() 方法,如果该方法返回 true,则输出登录成功的信息。main() 方法的定义如下:
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
System.out.println("用户名:");
String username=input.next();
System.out.println("密码:");
String password=input.next();
Test08 lt=new Test08 ();
boolean con=lt.validateLogin(username,password); //调用 validateLoginO 方法
if(con)
{
System.out.println("登录成功!");
}
}
在本程序的 validateLogin() 方法中使用条件控制语句和 for 循环语句分别对用户名和密码进行了验证。任何不符合用户名或者密码要求的情况都拋出自定义异常 LoginException,并在 catch 语句中捕获该异常,输出异常信息。
运行程序,当用户输入的用户名含有非数字字符时将拋出 LoginException 异常,执行 catch 语句块中的代码打印异常信息,如下所示。用户名:
xiake8!
密码:
123456
用户名中包含有非数字的字符!
当用户输入的用户名长度不在 6~10 位时同样会拋出 LoginException 异常并打印异常信息,如下所示。用户名:
administrator
密码:
123456
用户名长度必须在6~10位之间!
当用户输入的登录密码不等于 6 位时也会拋出 LogWException 异常,并打印出异常信息,如下所示。用户名:
20181024
密码:
12345
密码长度必须为 6 位!
当用户输入的用户名和密码都符合要求时,则打印登录成功的信息,如下所示。用户名:
20181024
密码:
123456
登录成功!
关于java判断用户名和密码的方法就分享到这里了,希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。
java 判断用户名_java判断用户名和密码的方法相关推荐
- java+map对象判断空值_java判断map中是否存在指定对象
Map判断是否包含指定的value使用containsValue方法.(推荐:java视频教程) 定义 containsValue(Object value) 如果此映射将一个或多个键映射到指定值,则 ...
- java 时间判断大小_java判断时间大小
//构造日期格式yyyy-MM-NN SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); Date d ...
- java 判断偶数_java 判断奇偶数
展开全部 代码如下: import java.util.Scanner; public class woo { public static void main(String args[]) { Sca ...
- java数据成员_Java基础教程之对象的方法与数据成员
在Java基础教程之从Hello World到面向对象一文中,我们初步了解了对象(object).对象中的数据成员表示对象的状态.对象可以执行方法,表示特定的动作. 此外,我们还了解了类(class) ...
- java private 接口_java接口中 定义 private 私有方法
在传统的Java编程中,被广为人知的一个知识点是:java Interface接口中不能定义private私有方法.只允许我们定义public访问权限的方法.抽象方法或静态方法.但是从Java 9 开 ...
- java 生成随机数_Java 生成随机数的 N 种方法
原标题:Java 生成随机数的 N 种方法 www.baeldung.com/java-generating-random-numbers 1.引言 本文将探讨用 Java 生成随机数的不同方法. 2 ...
- java 字符串函数_Java字符串函数– 25+必须知道方法
java 字符串函数 Java字符串函数 (Java String Functions) Java String class has a lot of functions to manipulate ...
- java 数组删除_Java数组删除指定元素的方法(按数组角标删除)
Java最有效的删除数组指定元素的方法,应该属于这一种形式,下面是Java数组按角标删除数据的工具类,代码如下:public static byte[] removeTheElement(byte[] ...
- java泛型方法作用_java泛型的作用与使用方法是什么?
泛型,即"参数化类型".一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参.那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变 ...
最新文章
- 对于大数据大流量情况下微软架构的水平扩展的遐想(瞎想)
- 深入理解.net服务器控件
- 回腾讯了......
- NET 提供了执行异步操作的三种模式
- Oracle学习笔记:通过种子数据库设置dbid为指定值
- 【代码笔记】iOS-UILable电子表显示
- CentOS Yum 命令详解
- EasyUI DataGrid 实用例子(2015-05-22)
- 集合(ArrayList、Hashtable、泛型集合)
- jQuery入门 jQuery入门第一天 1. jQuery入门
- 万圣节html代码大全,《方舟:生存进化》万圣节代码大全
- ubuntu安装windows 字体
- 岁月让人从批判走向了建设
- 微信/钉钉电脑端登录后手机端不再提醒
- 从知识工程到知识图谱全面回顾
- Im4java + ImageMagick 缩略图补白加边
- springboot-admin 整合nacos处理含有context-path的应用问题
- oracle创建用户saler,Linux环境下sqlldr一个csv文件
- Java中如何定义一个数组呢?
- anki计算机知识,「背书 刷题神器」 Anki 是应对考试的强力效率 buff
热门文章
- 专业办公套件WPS Office 2020 for Mac
- 【win10系统重装】
- 抽象基类与接口,共性与个性的选择
- Nginx反向代理服务器解决负责均衡问题
- 卡尔曼滤波最完整公式推导
- 关于vue的组件重新加载
- seaborn颜色报错 ValueError: Invalid RGBA argument: [‘#f9802d‘, ‘#f26b15‘, ‘#fdc48f‘]
- 2021年二级c语言软件下载,2021计算机二级宝典
- 解决联通宽带域名劫持
- 大盘点:英特尔®傲腾™突破存储瓶颈的十大价值点