3 回答

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個(gè)贊
您的問(wèn)題有兩種解決方案。使用 for 循環(huán)和使用 while 循環(huán)。
for 循環(huán)將運(yùn)行代碼塊 x 次。例如
System.out.println("How many characters would you like? ");
Scanner scanner = new Scanner(System.in);
int result = scanner.nextInt();
for (int i = 0; i < result; i++) {
// Code to give user a character runs "result" amount of times
}
while 循環(huán)將無(wú)限期地運(yùn)行,直到滿足條件為止。例如
boolean anotherCharacter = true;
while (anotherCharacter) {
// Code to give user a character runs until "anotherCharacter" is false
System.out.println("Would you like another character? (yes/no) ");
Scanner scanner = new Scanner(System.in);
String result = scanner.next();
if (result.equalsIgnoreCase("no")) {
anotherCharacter = false;
}
}
根據(jù)您的情況,最佳選擇取決于您在游戲開始時(shí)是否確切知道需要多少個(gè)角色。如果是這樣,我會(huì)推薦 for 循環(huán)。但是,如果您不知道游戲開始時(shí)的字符數(shù),我會(huì)推薦 while 循環(huán)。

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超6個(gè)贊
我看到的最簡(jiǎn)單的解決方案是使用 while 循環(huán),在字符之間詢問(wèn)“您想繼續(xù)嗎”并回答是/否。這樣你的程序就會(huì)在執(zhí)行之間等待。然后,您可以將角色制作邏輯包裝在 while 循環(huán)內(nèi)。谷歌搜索“java input”會(huì)對(duì)你有所幫助。

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超3個(gè)贊
我相信您想要執(zhí)行代碼,直到按下特定的鍵(而不是僅在 GUI 的情況下可用的按鈕)。除非您使用本機(jī)庫(kù)實(shí)現(xiàn)它,否則這是不可能的。您可以通過(guò) JNI 或 JNA 文檔來(lái)完成此操作。不過(guò),使用 GUI 會(huì)簡(jiǎn)單得多,并且與本機(jī)庫(kù)的情況不同,它是獨(dú)立于平臺(tái)的。
添加回答
舉報(bào)