![](/img/trans.png)
[英]Success function not executed even after successfully execution of controller method
[英]Execution of method even after return is executed in java
這是我的代碼(方法):
int temp =0;
result=false;
isPossible(temp);
if(result) System.out.println("YES");
else System.out.println("NO");
}} private static void isPossible( int i) {
if(i>n || i+m >= n || i==n-1){
result =true;
return;
}
if(visitedArray[i] == true){
System.out.println(A[i]+"d");
return;
}
visitedArray[i]= true;
if (i+1 < n && A[i+1]==0){
System.out.println(A[i]+"a");
isPossible(i+1);
}
if (i-1>=0 && A[i-1]==0){
System.out.println(A[i]+"b");
isPossible(i-1);
}
if(A[i+m]==0 && i+m < n){
System.out.println(A[i]+"c");
isPossible(i+m);
}
}
輸出為:
0c 0b 0a 0d 0c YES
我想知道為什么即使執行了return之后仍執行最后一個if循環,即為什么即使在執行了return的“ 0d”之后輸出仍打印“ 0c”呢?
事實是,在您打印a或b的情況下,您再次調用了isPossible
方法,但是您沒有返回。 程序的流程可以是:
不知道YES
打印來自哪里,沒有出現在您的已發布代碼中,但是您知道了
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.