Java - 基本硬编码用户输入登录屏幕

时间:2018-03-29 13:06:37

标签: java methods login boolean

我正在尝试为我的练习应用程序创建一个基本的登录屏幕。目前我在主课上上了这门课:

        private static boolean inlogMenu(Scanner sc){
            System.out.println(" -- Inloggen ZVC Volkel --");
            for(int i = 1; i <= 3;  i++) {
                System.out.println("Gebruikersnaam?");
                String gebnaam = sc.nextLine();
                System.out.println("Wachtwoord?");
                String wachtwoord = sc.nextLine();

                for(Lid inloglid : zvcvolkel.getLeden()){
                    if(gebnaam.equals(inloglid.getGebnaam()) && inloglid.checkWachtwoord(wachtwoord)){
                        return true;
                    }
                }
                System.out.println("Inloggegevens ongeldig");
            }
            return false;
        }

我尝试添加不同的println以查看出现了什么问题。它将用户输入添加到String,但问题在于第二个for循环。它应该遍历一个ArrayList(zvcvolkel.getLeden()),但它只是完全跳过它并直接进入Inloggegevens ongeldig println。

任何人都知道什么是错的?

1 个答案:

答案 0 :(得分:2)

不要从方法外部调用变量。这会产生各种各样的问题。将其作为参数传递给方法并在本地使用它。这样,您可以将列表存储在方法内的数组中,并从那里进行调试。