必须在方法中指定 return,但我希望方法再次调用自身而不是 returning

Have to specify return in method, but I want the method to call itself again instead of returning

我写了一个方法。它正在模仿抛硬币并尝试检测案例 "three heads in a row"。一旦连续出现三个正面(计数器=3),该方法到达这一点所需的迭代次数为returns(genCounter)。

问题是eclipse说这个方法应该return"int",但是我做了returngenCounter。(counter和genCounter都是int实例变量)。正如我通过浏览互联网了解到的那样,问题是我没有 returning 其他任何东西。但我不希望它成为 return 任何东西,以防万一我想从头开始我的方法。

private int isThree(){
    String coin = rg.nextBoolean()?"Heads":"Tails";
    if (coin.equals("Heads")){
        counter += 1;
    }else{
        counter = 0;
    }
    genCounter += 1;
    if (counter == 3) {
        return genCounter;
    }else{
        isThree();
    }
}

您需要告诉方法 return 调用自身的值。变化:

isThree();

return isThree();

But I don't want it to return anything, in case of else I want to start my method from the beginning.

提示:要重复某些操作,请使用循环(这也将解决您当前的问题)。

您目前正在为此使用递归;虽然可行,但它确实使事情变得不必要地复杂化。

刚刚

return isThree();

else中应该做到。