第一题
【检测密码】一些网站设定了一些指定密码的规则。编写一个方法,检测一个字符串是否是合法的密码。假定密码规则如下:
- 密码必须至少有8个字符。
- 密码只能包括数字和字母。
- 密码必须至少有2个数字。
编写一个程序,提示用户输入密码,如果该密码符合规则就显示“Valid Password”,否则显示“Invalid Password”。
(1)运行结果与结果分析
测试1:第一次输入正确
结果分析:密码符合三个条件,输入正确,直接输出Valid Password
测试2:输入的密码不合法,再次输入直到输入合法
结果分析:第一串密码有非法字符,第二串密码只有一个数字,第三串密码长度不够8位,第四串密码没有问题,输出Valid Password
(2)心得体会
本题用isLegal函数判断密码是否合法,对不符合要求的条件进行分情况讨论,用flag作为标志,用while循环进行输入,难度不大
(3)源代码
package 实验7;
import java.util.Scanner;
public class Program1 {
public static boolean isLegal(String s){
if(s.length()<8) return false;
for(int i=0;i<s.length();i++){
if(!(Character.isDigit(s.charAt(i))||Character.isLetter(s.charAt(i)))) return false;
}
int count=0;
for(int i=0;i<s.length();i++)