我正在尝试让这个抛硬币程序适用于 Java。我还是个新手,而且我很确定我搞砸了很多事情。有人可以看一下吗?无法弄清楚如何让我的开关继续循环,直到用户输入 0 停止硬币翻转:
主要目标是询问用户翻转了多少次,并输出翻转了多少次正面和背面。然后询问他们是否想继续翻转并将这些翻转添加到已经完成的翻转中,我必须使用 ENUM 来完成此操作。 。 。
import java.util.Random;
import java.util.Scanner;
public class CoinTossing {
private enum Coin { HEADS, TAILS };
private static final Random randomNumbers = new Random();
private static final int HEADS = 1;
private static final int TAILS = 2;
public static void main(String[] args)
{
Scanner input = new Scanner (System.in);
int quantity = 0;
int headSide = 0;
int tailsSide = 0;
System.out.println("How many times would you like to flip the coin? Enter 0 to end.");
int flipNumber = input.nextInt();
while (flipNumber != 0)
quantity = quantity + flipNumber;
for(int x=1; x<=quantity; ++x);
switch (Flip(null))
{
case HEADS:
headSide++;
break;
case TAILS:
tailsSide++;
break;
}
if (flipNumber == 0)
System.out.println("Your Number of flips is" + HEADS +TAILS);
}
private static int Flip(Random randomNumber) {
int toss;
toss = 1+ randomNumber.nextInt(2);
return toss;
}
}
最佳答案
while (flipNumber != 0)
quantity = quantity + flipNumber;
这个循环永远不会中断。如果没有大括号,这是一个单行循环,相当于
while (flipNumber != 0)
{
quantity = quantity + flipNumber;
}
显然,如果flipNumber不为0,这个循环将永远运行。
关于java - 枚举抛硬币程序卡住了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35348105/