当前位置: 首页 > 知识库问答 >
问题:

密码检查器java程序

方斌
2023-03-14

我试图创建一个程序,将检查用户的密码。我希望程序结束时,用户得到它的权利,但如果没有,我希望它只问4次。

问题:即使您正确获取密码,程序也会继续要求猜测密码。如果您弄错了,它会错误地询问。我该如何解决这个问题?

import java.util.Scanner;
public class HowToAdd {
    public static void main (String [] args){
        Scanner input = new Scanner (System.in);
        int trys = 0;
        String password=null;
        do{
            System.out.println("Guess the password");
            password = input.next();

            if(password.equalsIgnoreCase("Password")){
                System.out.println("Great job");
            }else{
                System.out.println("Try again");
                input.next();
                trys++;
            }
        }while(trys<2);
        System.out.println("Try again later!");

        input.close();
    }
}

共有3个答案

钱元徽
2023-03-14

您可以使用break关键字修复它,如下所示:

        if(password.equalsIgnoreCase("Password")){
            System.out.println("Great job");
            break;
        }

以下是对< code>break的解释:

分支语句

阎慈
2023-03-14

我不仅添加了一个中断来解决输入正确密码时不会退出循环的问题,还添加了一些其他的东西来帮助你,见下文:

 public static void main (String [] args){
    Scanner input = new Scanner (System.in);
    int trys = 0;
    String password=null;
    System.out.println("Guess the password:");
    while(trys<2)
    {
        password = input.next();

        if(password.equalsIgnoreCase("Password")){
            System.out.println("Great job");
            break;
        }else{
            trys++;
            if(trys != 2)
            {
                System.out.println("Try again:");
            }
        }
    }
    if(trys == 2)
    {
        System.out.println("Try again later!");
    }

    input.close();
}

尝试这样做,如果它是正确的,它将打破循环使用中断; 语句。此外,它只会在第一次尝试时显示猜测密码,然后再试一次。如果他们猜对了,它也不会说以后再试一次,因为它会检查他们是否猜错了两次。

方轩昂
2023-03-14

你只需要加一个Rest:

if(password.equalsIgnoreCase("Password")){
 System.out.println("Great job");
 break;
}
 类似资料:
  • 我试图检查密码,我加密之前,但我得到一个例外,我不知道为什么。 这里是我用来加密密码的方法: 加密工作成功。 此处为错误日志: 有什么想法吗?感谢你的帮助.

  • 问题内容: 谁能推荐一个Java库,其中包含适用于在Webapp中执行服务器端密码强度检查的方法。理想情况下,检查程序应为: 可配置的,允许部署者提供不同的字典,调整不同标准的权重,等等 可扩展,允许在需要时实施新标准 用纯Java实现 根本没有与标记库,UI组件或“密码管理”功能交织在一起 与GPL 3项目兼容 与弹簧接线兼容 Mavenized(可通过Maven Central获得) 问题答案

  • 我在我的应用程序中使用LDAP身份验证。我使用以下代码: 使用空密码进行身份验证。我知道我需要插入一个空密码检查,因为在这种情况下并不是所有的LDAP服务器都返回错误。如何以及在哪里插入空白密码的检查更好?

  • 我正在通过perl脚本使用net::SFTP::foreign模块连接到SFTP服务器,示例命令如下: net::sftp::foreign->new($host,端口=>'22',后端=>'NET_SSH2') null

  • 问题内容: 我正在写一个密码验证指令: html: 给定一个格式的2个密码字段,如果两个密码值相等,则该指令影响的字段有效。问题是它以一种方式起作用(即,当我在密码验证字段中键入密码时)。但是,当原始密码字段更新时,密码验证无效。 知道如何进行“双向绑定验证”吗? 问题答案: 这应该解决它: 视图: 指示

  • 我有这个功能: 现在我想强制用户至少有1个上翻字母、1个小写字母、1个数字和1个特殊字符。 我有以下问题: