Java Return 不退出方法(循环)

标签 java loops methods nested return

我正在为一个学校项目工作,我在一个方法中有许多嵌套循环。我可以验证我的代码是否达到“返回真值”; “return false;”之前的声明使用太多 System.out.println 语句。

有没有return不立即退出方法的情况。在我的代码中,它到达了“return true;”,但随后继续执行该方法。

谢谢 - 第一次发帖,但是其他问题的长期学生

编辑:显示我的代码 - 这是一个加州大学伯克利分校的项目,所以他们不允许我们发布完整的代码。这是重要的部分。

我的代码中没有“try 语句”。这是我的方法的最后,它有大量循环(while 和 for)循环。

if (x == 7 && turn == 5){
                    System.out.println("TRUE RESULT");
                    return true;


                }

                nextVictory(turn, x, y, color,z);
                alive = false;
            }

        }


          }
    }
    System.out.println("FALSE RESULT");
    return false;
}

我有打印语句来验证我所在的位置。以下是结果:

真实结果

错误的结果

错误的结果

错误的结果

错误的结果

最佳答案

Is there any case where return does not immediately exit the method?

想到的唯一情况是 return 语句是否在 try-finally block 中。 finally block 仍然会被执行。

另一种可能表现出类似行为的情况是您的方法是递归的。在这种情况下,嵌套调用中的 return 语句实际上会返回给调用者。但是,如果调用者是方法本身,这可能会导致方法在 return 之后继续执行。

关于Java Return 不退出方法(循环),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15727019/

相关文章:

c# - 如何在运行时获取方法的名称?

c# - 获取数组中元素索引的快速方法是什么?

java - AsyncTask 根据共享首选项中存储的时间检查当前 session

java - 为什么我的程序不输出数组元素?

java - 如何要求多个输入并在用户输入 0 时停止?

java - 学习JAVA需要帮助理解getLogger().info()(Method Chaining)的概念

java - WS 安全错误 : 181001 while trying to access to a web service through Apache CXF

Javascript 数组和对象比较

javascript - 我的脚本导致无限循环

angular - 在 Angular Material 表上调用 renderRows()