学习Java,For循环无法呈现。

我创造了这个 PassworField 如果用户输入了正确的密码,就会跳出这个循环。hello. 它应该循环5次才会阻止用户。如果用户第一次输入正确的密码,它确实会中断,但当用户第一次输入错误的密码,然后在第二次尝试正确时,它不会中断。即使我输入了正确的密码,它也只是循环5次,然后就会被阻止。如果你能帮助我,我将感激不尽……把我逼疯了……我创建了这个PassworField方法。

public class LoginPage {


         static String password = "hello";
         static Scanner scn = new Scanner(System.in);
         static String input = scn.nextLine();


        public static void PasswordField() {
            System.out.println("Enter the password");
            for (int i = 0; i <5; i++) {
                if (password.equals(input)) {
                        System.out.println("You are In");
                             break;
                }
                   else if(!input.equals(password)) {
                            System.out.println("Wrong, Please Enter the Password again:");
                            scn.nextLine();
                    }
                else {
                       System.out.println("You are Blocked sucker. call helpdesk");
                }


            }
                            scn.close();
         }

解决方案:

你缺少的是更新 input 的新值。此外,被屏蔽的逻辑应该是 之后 for循环结束。

 public static void PasswordField() {
        System.out.println("Enter the password");
        for (int i = 0; i < 5; i++) {
            if (password.equals(input)) {
                System.out.println("You are In");
                scn.close();
                return;
            } else {
                System.out.println("Wrong, Please Enter the Password again:");
                input = scn.nextLine();
            }
        }
        System.out.println("You are Blocked sucker. call helpdesk");
        scn.close();
}

给TA打赏
共{{data.count}}人
人已打赏
解决方案

SwiftUI, 为什么只显示一个 "导航条项目"?

2022-4-22 2:00:18

解决方案

im developing an admin panel where the admin can see all the bookings that have been requested and select those who he will accept; and I want to display those 'accepted' bookings in a different tab (...

2022-4-22 3:00:08

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索