猿问

有没有什么简单的方法可以在按下特定按钮后重新运行方法/程序?

我编写了一个简单的低级随机发生器,为我和我的朋友玩的棋盘游戏创建一个角色。然而,写完之后,我意识到我还需要一种简单的方法来重新运行程序以生成新的随机字符。目前,我必须关闭程序然后重新运行它才能生成新角色。有什么简单的方法可以做到这一点吗?请注意,我是一个相当中级的编码员。

我在网上搜索过,发现的大多数解决方案都需要创建 GUI。这是我不愿意做的事情。我也尝试过使用while循环作为解决方案,但我还没有找到一种方法来暂停程序,直到按下按钮。

任何简单的事情都会受到赞赏。如果我必须做一些更复杂的事情,比如创建 GUI,我准备学习如何做。


慕雪6442864
浏览 113回答 3
3回答

胡子哥哥

您的问题有两种解决方案。使用 for 循环和使用 while 循环。for 循环将运行代码块 x 次。例如&nbsp; &nbsp; System.out.println("How many characters would you like? ");&nbsp; &nbsp; Scanner scanner = new Scanner(System.in);&nbsp; &nbsp; int result = scanner.nextInt();&nbsp; &nbsp; for (int i = 0; i < result; i++) {&nbsp; &nbsp; &nbsp; &nbsp; // Code to give user a character runs "result" amount of times&nbsp; &nbsp; }while 循环将无限期地运行,直到满足条件为止。例如&nbsp; &nbsp; boolean anotherCharacter = true;&nbsp; &nbsp; while (anotherCharacter) {&nbsp; &nbsp; &nbsp; &nbsp; // Code to give user a character runs until "anotherCharacter" is false&nbsp; &nbsp; &nbsp; &nbsp; System.out.println("Would you like another character? (yes/no) ");&nbsp; &nbsp; &nbsp; &nbsp; Scanner scanner = new Scanner(System.in);&nbsp; &nbsp; &nbsp; &nbsp; String result = scanner.next();&nbsp; &nbsp; &nbsp; &nbsp; if (result.equalsIgnoreCase("no")) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; anotherCharacter = false;&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; }根据您的情况,最佳选择取决于您在游戏开始时是否确切知道需要多少个角色。如果是这样,我会推荐 for 循环。但是,如果您不知道游戏开始时的字符数,我会推荐 while 循环。

慕哥9229398

我看到的最简单的解决方案是使用 while 循环,在字符之间询问“您想继续吗”并回答是/否。这样你的程序就会在执行之间等待。然后,您可以将角色制作逻辑包装在 while 循环内。谷歌搜索“java input”会对你有所帮助。

DIEA

我相信您想要执行代码,直到按下特定的键(而不是仅在 GUI 的情况下可用的按钮)。除非您使用本机库实现它,否则这是不可能的。您可以通过 JNI 或 JNA 文档来完成此操作。不过,使用 GUI 会简单得多,并且与本机库的情况不同,它是独立于平台的。
随时随地看视频慕课网APP

相关分类

Java
我要回答