java递归调用 return的问题
程序员文章站
2022-03-25 18:07:14
最近比较闲,写了个递归调用获取最大公约数,刚开始写错了,但一直不明白错在哪,错误代码如下: public class Demo { public static void main(String[] args) { int gcd = gcd(5, 15); System.out.println(gc ......
最近比较闲,写了个递归调用获取最大公约数,刚开始写错了,但一直不明白错在哪,错误代码如下:
public class demo { public static void main(string[] args) { int gcd = gcd(5, 15); system.out.println(gcd); } private static int gcd(int a, int b) { if (b != 0) { int i = a % b; a = b; b = i; gcd(a, b); } return a; } }
刚开始一直想不明白为什么当b!=0的时候 不直接return a的值 而是往gcd方法里走,直到a等于传入的值时才返回
后来就写了2个方法来debug
找到原因后 修改代码如下:
public class demo { public static void main(string[] args) { int gcd = gcd(4, 10); system.out.println(gcd); } private static int gcd(int a, int b) { if (b != 0) { int i = a % b; a = b; b = i; return gcd(a, b); } return a; } }
推荐阅读
-
php的swoole扩展中onclose和onconnect接口不被调用的问题,swooleonclose_PHP教程
-
解决SpringCloud Feign传对象参数调用失败的问题
-
解决phpcms更换javascript的幻灯片代码调用图片问题_php实例
-
PHP和JAVA的XML-RPC中文问题解决办法_php基础
-
java并发请求下数据插入重复问题的解决方法
-
解决feignClient调用时获取返回对象类型匹配的问题
-
请帮忙看看PHP调用C#的webservice的问题
-
fckeditor调用的有关问题
-
php如何实现ppt转图片以及php调用com组件问题的详细介绍
-
PHP递归调用的小技巧讲解