6.18( 检测密码)⼀些⽹站对于密码具有⼀些规则。编写⼀个⽅法,检测字符串是否是⼀个有效密码。
假定密码规则如下:
• 密码必须⾄少 8 位字符。
• 密码仅能包含字⺟和数字。
• 密码必须包含⾄少两个数字。
编写⼀个程序,提示⽤户输⼊⼀个密码,如果符合规则,则显示 Valid Password , 否则
显示 Invalid Password
代码:
import java.util.Scanner;
public class Exercise06_18 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入密码:");
String mima = input.nextLine();
if (is(mima)) {
System.out.println("Valid Password");
} else {
System.out.println("Invalid Password");
}
}
public static boolean is(String mima) {
if (mima.length() < 8) return false;
for (int i = 0; i < mima.length(); i++) {
char ch = mima.charAt(i);
if (!Character.isLetterOrDigit(ch)) {
return false;
}
}
int digitCount = 0;
for (int i = 0; i < mima.length(); i++) {
char ch = mima.charAt(i);
if (Character.isDigit(ch)) {
digitCount++;
if (digitCount >= 2) {
break;
}
}
}
return true;
}
}
知识点:
1.输入
import java.util.Scanner;
Scanner input = new Scanner(System.in);
String mima = input.nextLine();
2.字符串处理
***.length( ); 处理字符串的长度;
mima.charAt(i); 通过charAt( ) 取单个字符进行判断处理
Character.isLetterOrDigit( ch ); 判断单个字符或数字是否是数字或者字符,Letter字符,Digit数字;
isLetter 和isDigit 同理
2715

被折叠的 条评论
为什么被折叠?



