第6章質問18(パスワードの確認)

第6章質問18(パスワードの確認)

  • ** 6.18(パスワードの確認)一部のWebサイトには、パスワードに関するいくつかのルールがあります。文字列が有効なパスワードであるかどうかを検出するメソッドを記述します。パスワードの規則は次のとおりであると想定します。
    パスワードは8文字以上である必要があります。
    パスワードには文字と数字のみを含めることができます。
    パスワードには少なくとも2つの数字が含まれている必要があります。
    ユーザーにパスワードの入力を求めるプログラムを作成します。ルールを満たしている場合は有効なパスワードを表示し、そうでない場合は無効なパスワードを表示します。
    ** 6.18(パスワードの確認)一部のWebサイトでは、パスワードに特定のルールが課されています。文字列が有効なパスワードであるかどうかをチェックするメソッドを記述します。パスワードのルールは次のとおりです

    パスワードは8文字以上である必要がありますパスワードは文字と数字。
    パスワードには少なくとも2桁の数字が含まれている必要があります。
    ユーザーにパスワードの入力を求め、ルールに従っている場合は有効なパスワードを表示し、そうでない場合は無効なパスワードを表示するプログラムを作成します。
  • 参照コード:
package chapter06;

import java.util.Scanner;

public class Code_18 {
    
    
    public static void main(String[] args) {
    
    
        Scanner input = new Scanner(System.in);
        System.out.print("Enter a string: ");
        String str = input.nextLine();
        if (passwordTestLength(str) && passwordTestLetterOrDigit(str) && passwordTestNumber(str))
            System.out.println("Valid Password");
        else
            System.out.println("Invalid Password");
    }
    public static boolean passwordTestLength(String str){
    
    
        if (str.length() >= 8)
            return true;
        else return false;
    }
    public static boolean passwordTestLetterOrDigit(String str){
    
    
        for (int i = 0;i < str.length();i++){
    
    
            if (!Character.isLetterOrDigit(str.charAt(i)))
                return false;
        }
        return true;
    }
    public static boolean passwordTestNumber(String str){
    
    
        int number = 0;
        for (int i = 0;i < str.length();i++){
    
    
            if (Character.isDigit(str.charAt(i)))
                number++;
        }
        if (number >= 2)
            return true;
        return false;
    }
}

  • 結果は次のことを示しています。
Enter a string: jxh1025
Invalid Password

Process finished with exit code 0

おすすめ

転載: blog.csdn.net/jxh1025_/article/details/109165698