java - 测试突然结束

标签 java

 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 数组的索引更新为相应的当前卡片。例如,如果牌列表上的迭代器给了我一张 A,我就会rankCount[1]++。现在要确定这手牌是否是直手,我只需查找带有条目的 ArrayCount 的第一个索引,然后发布的代码是不言自明的。但是,当我测试该程序时,程序突然结束,没有错误。事实上,它恰好在退出外循环后结束。删除上面的代码可以解决该问题。

最佳答案

您的内部循环使用与外部循环相同的循环计数器。不要。

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;
    }
}

关于java - 测试突然结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27455572/

相关文章:

java - 写入输出流时套接字已关闭?

java - 使用从 "App A"到 "App B"的 URI 在 Intentw 中传递参数 -Android

java - 从 Java 调用 Rust

java - 正则表达式 Java 非字母数字字符匹配

java - 如何获取 JNA 结构数组的 c 指针

java - 从 Java 使用 sqlite 获取最后插入的 id 的最佳方法是什么?

java - 如何在填充的矩形内绘制字符串?

java - 从方法创建另一个类的实例并将其输出添加到 map

java - 如何获取对象或类的方法列表?

java - 只能使用 Objectify 在 GAE 数据存储中更新字段一次