straight = true;
for(int i = 1; i < rankCount.length && straight; i++) {
if(rankCount[i] ==1) {
for(i = i+1;i < i+2; i++) {
if(rankCount[i]!=1){
straight = false;
}
}
}
}
我正在用java实现视频扑克,我正在使用这段代码来判断当前的手是否是直接的。我首先遍历一个卡列表,并将rankCount数组的索引更新为相应的当前卡。例如,如果卡片列表上的迭代器给我一个ace,我就是rankCount [1] ++。现在要弄清楚手是否是一只直手我只是用条目1来寻找ArrayCount的第一个索引,然后发布的代码是自我解释的。但是,当我测试程序时,程序突然结束而没有错误。事实上,它在退出外循环后正好结束。并删除上面的代码解决了这个问题。
答案 0 :(得分:4)
您的内循环使用与外循环相同的循环计数器。唐&#39;吨
for(i = i+1;i < i+2; i++) {
我想你想要的东西,
boolean straight = true;
for (int i = 0; i < rankCount.length; i++) {
if (rankCount[i] != 1) {
straight = false;
break;
}
}