无限循环?当我测试运行时,Eclipse停止应答

无限循环?当我测试运行时,Eclipse停止应答,eclipse,infinite-loop,blackjack,Eclipse,Infinite Loop,Blackjack,这是我的第一篇文章,所以我希望我做得对。我现在正在做一个非常简单的black jack 当我测试我的程序(如下图所示)时,没有任何结果,但除非我终止,否则eclipse将永远工作。我查了一下这个问题,似乎它可能是一个无限循环。在把代码弄乱了一点之后,我仍然有这个问题 虽然我99%确信“while(sum

这是我的第一篇文章,所以我希望我做得对。我现在正在做一个非常简单的black jack

当我测试我的程序(如下图所示)时,没有任何结果,但除非我终止,否则eclipse将永远工作。我查了一下这个问题,似乎它可能是一个无限循环。在把代码弄乱了一点之后,我仍然有这个问题

虽然我99%确信“while(sum<16)”循环导致了问题,但我不明白为什么它会永远持续下去,因为这个循环的总和应该越来越大

谢谢你的帮助

公共类DrawCardFromDeck
{
公共静态双随机数(双范围)
//生成从0到范围-1的随机数
{
双数;
数字=Math.random()*范围;
数字=数学楼层(数字);
返回号码;
}
公共静态int值(int-cardd)
//存储每个“卡ID号”的值
{
int[]cardValue={2,3,4,5,6,7,8,9,10,10,11,2,3,4,5,6,7,8,9,10,10,10,10,11,2,3,4,5,6,8,9,10,10,10,10,11,2,3,4,5,6,8,9,10,10,10,11};
返回cardValue[cardID];
}
公共静态字符串套装(内部梳理)
//为每个“卡ID号”存储套装
{
字符串[]套装={“红桃”、“黑桃”、“钻石”、“梅花”、“红桃”、“黑桃”、“钻石”、“梅花”、“红桃”、“黑桃”、“钻石”、“梅花”、“红桃”、“红桃”、“红桃”、“钻石”、“红桃”、“红桃”、“红桃”、“红桃”、“红桃”、“红桃”、“红桃”、“红桃”、“红桃”、“红桃”、“红桃”、“红桃”,“黑桃的”、“钻石的”、“梅花的”、“红桃的”、“黑桃的”、“钻石的”、“梅花的”、“红桃的”、“黑桃的”、“钻石的”、“梅花的”、“钻石的”、“梅花的”、“红桃的”、“钻石的”、“梅花的”、“红桃的”、“黑桃的”、“钻石的”、“梅花的”、“红桃的”、“红桃的”、“黑桃的”、“钻石的”俱乐部‘};
返回诉讼[卡迪德];
}
公共静态void main(字符串[]args)
{
整数和=0;
int-indexPosition;
int cardsDrawn=0;
布尔值[]cardCounter=新布尔值[52];
对于(indexPosition=0;indexPosition21)//如果是半身像,则将ACE值减少10
{
对于(indexPosition=0;indexPosition21)//如果仍然是半身像,则输出半身像
系统输出打印号(“半身像”);
}

如果(sum,问题在于未设置indexPosition。由于此变量用作索引,因此将使用同一张卡,只添加一次


事实上,我希望indexPosition,因为上面的迭代循环会导致超过最后一张卡,但这可能不是真的。

问题是没有设置indexPosition。因为这个变量用作索引,所以将使用同一张卡,只添加一次


事实上,我希望由于上面的迭代循环而导致的非扩展会超出最后一张卡,但可能这不是真的。

谢谢!我怎么会忘记,哈哈。现在我的问题是,它只输出半身像,不过,希望我能解决……再次感谢。^^欢迎你……别忘了投票/接受答案(这将确保下次你更愿意回答你的问题)。谢谢!我怎么会忘记,哈哈。现在我的问题是,它只输出半身像,尽管如此,但希望我能找到答案…再次感谢。^不客气…别忘了投票/接受答案(这将确保下次你更愿意回答你的问题)。