本文介绍了Java中无法访问的代码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我不明白无法访问的代码"是什么意思?
I don't get what does "unreachable code" means ?
在我的代码的最后一行中 double densityOfWin =获胜/(获胜+失败);
表示无法访问的代码.
Here in the last line of my code double probabilityOfWin = wins / (wins + loses);
it says unreachable code.
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);
}
}
推荐答案
此处的循环:
while(GAMES <= 9999)
{
...
}
解析为 while(true)
,因为从未修改过 GAMES
的值.因此,之后出现的任何代码(在您的情况下为 Double概率OfWin =获胜/(获胜+失败);
)都被视为无法访问.
resolves to while (true)
because the value of GAMES
is never modified. So any code that comes after (in your case, double probabilityOfWin = wins / (wins + loses);
) is deemed unreachable.
这篇关于Java中无法访问的代码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!