它工作正常但我不确定它是如何工作的,任何人都可以解释它吗?谢谢
public static int gcd(int a, int b) {
return b==0 ? a : gcd(b, a%b);
}
Run Code Online (Sandbox Code Playgroud)
你有一个三元运算符(bool ? x : y).这样的操作员将评估问号前的陈述.如果评估为true,则将选择x,否则为y.
这意味着它的逻辑等同于:
public static int gcd(int a, int b)
{
if (b == 0)
return a;
else
return gcd(b, a % b);
}
Run Code Online (Sandbox Code Playgroud)
接下来,a % b计算两个数的模数,这是整数除法的余数a / b.例如:7 % 2结果1和14 % 5收益率4.
| 归档时间: |
|
| 查看次数: |
110 次 |
| 最近记录: |