我不知道"无法访问的代码"是什么意思?
我的代码double probabilityOfWin = wins / (wins + loses);
的最后一行显示了无法访问的代码。
import java.util.Random;
public class CrapsGame {
public static final int GAMES = 9999;
public static void main(String[] args) {
Random randomGenerator1 = new Random();
Random randomGenerator2 = new Random();
Random randomGenerator3 = new Random();
Random randomGenerator4 = new Random();
int dice1 = randomGenerator1.nextInt(6) + 1;
int dice2 = randomGenerator2.nextInt(6) + 1;
int comeoutSum = dice1 + dice2;
int point = 0;
// The comeout roll
if (comeoutSum == 7 || comeoutSum == 12)
System.out.println("wins");
else if ( comeoutSum == 2 || comeoutSum == 3 || comeoutSum == 12)
System.out.println("loses");
else
point = comeoutSum;
int wins = 0;
int loses = 0;
while(GAMES <= 9999)
{
dice1 = randomGenerator3.nextInt(6) + 1;
dice2 = randomGenerator4.nextInt(6) + 1;
int sum = dice1 + dice2;
if (sum == point)
wins++;
else if (sum == 7)
loses++;
}
double probabilityOfWin = wins / (wins + loses);
}
}
答案 0 :(得分:2)
这个循环在这里:
while(GAMES <= 9999)
{
...
}
解析为while (true)
,因为永远不会修改GAMES
的值。因此,之后的任何代码(在您的情况下为double probabilityOfWin = wins / (wins + loses);
)都被视为无法访问。
答案 1 :(得分:0)
您没有对常量GAME
进行任何更改。所以while
循环永远不会终止。最后一行代码无法访问。
无法访问意味着代码永远不会被执行。例如,
return 15;
int a = 12;
然后最后一行代码将不会被执行,因为该函数已经返回。