定义一个方法返回两个数的最大公约数,提示没有返回int类型

明明有返回的,是不是因为i是局部变量的原因啊ccccccccccccccccccccc图片说明

①假如你的getNumber函数的参数a、b皆小于或等于0,则c可能小于等于0,那么你的for循环就不符合条件i>0,不执行循环,而循环下面并没有return
②c大于0,然而循环中的if条件有可能皆为false,在循环结束后依然没有出现return

你需要在if结束后再return 0,因为你的if是有可能不执行的,所以要求你在遍历完成后依旧没有返回的情况下,返回一个int值

错误最少有两处
1.是在if外for内缺少一个return
2.虽然你在for循环内定义公约数值c=i;但是 c 是类变量,i 是对象变量,循环外 i 值无法调用,因此在类里,循环外,c 和 i 没有关系!要不你就将 i 值
在外边定义成一个类属性,要不就想办法在循环体内最终返还成 c 值,从而传递出来。