なぜ私のコードが無限ループに巻き込まれるのか分かりません。コードが間違って書かれているのでしょうか? 出力がエラーに無限ループに巻き込まれる
public class HelloWorld
{
public static void main(String[] args)
{
//Not sure if it's a better way but I did this way:
final int TRIES = 5;
int heads = 0;
for(int i=0; i<=TRIES; i++)
{
Scanner input = new Scanner(System.in);
System.out.print("Do you wanna continue? Y or N? ");
char c = input.next().charAt(0);
c = Character.toUpperCase(c);
if(c =='y'){
int r = (int) Math.random * 2) + 1; //A number between 1 & 2
if(r == 1)
{
System.out.print("heads");
heads++;
}
else{
System.out.print("Lost");
}
}
else{
System.out.print(heads);
}
}
}
}
このコードはコンパイルされません。 –
* "またはインデント" *これは、JVM自体ではなく、StackOverflowユーザーまたはコードの可読性に問題を引き起こします。 – Tom
無限ループはありません。あなたは6回ループして終了します(コードをコンパイルするのに十分なだけ固定した後)。ループインデックスに影響を与えることは何もしていません。何が無限ループだと思いますか? – azurefrog