从特定点循环到Java中的另一个点?

Gma*_*064 5 java loops while-loop

我工作在Java中的一个项目,是一种像数字时间机器,它基本上保存在什么目录发生在一个特定的沙爹,其档案到一个特定的文件,并将其存储的地方保管.现在我正在研究密码功能.我有基础知识来检查它是对还是错,但当我输入错误答案时,课程在说"无效密码"后结束.有没有办法让它从else语句的结尾循环到开头,main所以我不必每次都重新执行该类?

import java.util.Scanner;
import java.util.*;

public class Adam {

    public static void main(String args[]) {

        String passwrd = "password";
        String inputPassword;

        System.out.print("Please Input Password ");
        Scanner sc = new Scanner(System.in);
        inputPassword = sc.nextLine();

        if (inputPassword.equals(passwrd)) {
            System.out.println("Password Accepted, Loading Archive...");
        } else {
            System.out.println("Invalid Password");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

sin*_*ash 3

您可以使用 do while 循环,如果用户输入无效,则继续循环,否则不继续。

import java.util.Scanner;
import java.util.*;

public class Adam {

    public static void main(String args[]) {
        String passwrd = "password";

        String inputPassword;
        boolean b = true;
        Scanner sc = new Scanner(System.in);
        do {

            System.out.print("Please Input Password ");

            inputPassword = sc.nextLine();

            if (inputPassword.equals(passwrd)) {

                System.out.println("Password Accepted, Loading Archive...");
                b = false;
            } else {

                System.out.println("Invalid Password");
                b = true;

            }

        } while (b);

    }
}
Run Code Online (Sandbox Code Playgroud)

演示版