如果声明代码澄清

zzz*_*991 1 c#

有人能够向我解释这段代码的含义吗?

private long GCD(long a, long b) {
            return b == 0 ? a : GCD(b, a % b);
        }
Run Code Online (Sandbox Code Playgroud)

如果为零,则b等于a.否则GCD(b, a % b).这究竟是什么0意思?或者我误解了return b == 0 ? a : GCD(b, a % b);

Cai*_*von 6

你的操作顺序错了; ?:这里的优先级最低.代码等效于以下内容:

if (b == 0)
    return a;
else
    return GCD(b, a % b);
Run Code Online (Sandbox Code Playgroud)