有理数的分母

时间:2015-04-05 23:51:08

标签: arguments

public Rational(long numerator, long denominator) {
long gcd = gcd(numerator, denominator);
this.numerator = ((denominator > 0) ? 1 : -1) * numerator / gcd;
this.denominator = Math.abs(denominator) / gcd;

你好,我想知道它所说的第3行((分母> 0)?1:-1)* numerator / gcd。争论是什么?

1 个答案:

答案 0 :(得分:0)

此格式:

x = denominator > 0 ? 1 : -1

类似于if声明。

如果分母大于零,则x将设置为1 否则x将被设置为-1

更通用的形式是

 ? __ : __

这种表达形式有几种语言,如C,Java,Swift,Objective C,......