一些网站设定了一些制定密码的规则。编写一个方法,检验一个字符串是否合法的密码。假设密码规则如下:
1.密码必须至少有8哥字符。
2.密码只能包括字母和数字。
3.密码必须至少有2个数字。
编写一个程序,提示用户输入密码,如果该密码符合规则就显示“合法密码”,否则显示“不合法密码”
package cn.com.shizongger;
import java.util.Scanner;
/*
* 功能:检测密码的合法性
* 日期:2015.1.7
*
*/
public class Ex9_3 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String password = input.nextLine();
if(true == isValid(password)) {
System.out.println("合法密码格式");
} else {
System.out.println("不合法密码格式");
}
}
public static boolean isValid(String password) {
if(password.length() < 8) {
return false;
} else {
int numberCounter = 0;
for(int i = 0; i < password.length(); i++) {
char c = password.charAt(i);
if(!Character.isLetterOrDigit(c)) {
return false;
}
if(Character.isDigit(c)) {
numberCounter++;
}
}
if(numberCounter < 2) {
return false;
}
}
return true;
}
}