【问题标题】:How do I restart a program in Java? [duplicate]如何在 Java 中重新启动程序? [复制]
【发布时间】:2020-09-04 18:00:53
【问题描述】:

我已经查看了有关此主题的其他 StackOverflow 问题,但作为一名新开发人员,我感到非常困惑。我正在尝试编写一个程序,询问用户谜语并在用户在一个特定谜语上得到三个错误答案后重新启动。需要重启的代码是:

if (wrongAnswer == 3){
                        System.out.println("You have failed three times.");
                        restartApp();

我需要重新启动的代码应该在 restartApp() 现在所在的位置。 提前致谢!

【问题讨论】:

  • 你要重启的是什么?你能把逻辑放在一个循环中吗?
  • 我建议重置应用程序的状态,而不是重新启动整个应用程序。
  • 欢迎来到 Stack Overflow。请通过tour 了解 Stack Overflow 的工作原理,并阅读How to Ask 了解如何提高问题的质量。然后edit你的问题包含你拥有的源代码作为minimal reproducible example,它可以被其他人编译和测试。还可以查看help center,看看你可以问什么问题。请显示您尝试过的尝试以及您从尝试中得到的问题/错误消息。
  • 如果您对此感到困惑,我建议您阅读一本书/尝试在线教程以了解其工作原理。参见例如Java docs

标签: java restart


【解决方案1】:

因此,正如 Turing85 所提到的,重新启动整个程序可能不是要走的路。通常,您使用所谓的state machine。对于此示例,可以使用 while 循环来实现一个简单的示例。这是一个例子:

import java.util.Scanner;

public class foo  
{ 
    public static void main(String[] args) 
    { 
        Scanner scan = new Scanner(System.in);
        boolean running = true;
        while(running){

            System.out.println("enter a value, enter -1 to exit..."); 

            int value = scan.nextInt();

            if(value == -1){
                System.out.println("exiting");
                break;
            }else{
                System.out.println("do stuff with the value");
            }
        }
    } 
} 

这是输出:

enter a value, enter -1 to exit...
1
do stuff with the value
enter a value, enter -1 to exit...
2
do stuff with the value
enter a value, enter -1 to exit...
4
do stuff with the value
enter a value, enter -1 to exit...
-1
exiting

【讨论】:

    猜你喜欢
    • 2010-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多