在 JavaScript 中,我可以定义:
num = numerator || 0;
denom = denominator || 1;
然而,在 Java 中,这不能应用。
在不使用条件(明确编写)的情况下,是否有一种简洁的方法来实现“如果未定义,则分配给这个”?
在 JavaScript 中,我可以定义:
num = numerator || 0;
denom = denominator || 1;
然而,在 Java 中,这不能应用。
在不使用条件(明确编写)的情况下,是否有一种简洁的方法来实现“如果未定义,则分配给这个”?
也许这已经足够了。
num = numerator != null ? numerator : 0;
denom = denominator != null ? denominator : 1;
您可以使用多个构造函数,并设置默认值...如果您将其用作对象...
zero = new Rational();
five = new Rational(5);
twoThird = new new Rational(2,3);
class Rational{
num = 0;
denom = 1;
public Rational(){
}
public Rational(int num){
this.num=num;
}
public Rational(int num , int denom){
this.num=num;
this.denom=denom;
}
}
如何使用三元的其他解决方案需要包装对象并处理空指针,这通常不是好的 java 风格
您可以使用三元运算符/条件(?:)
String ans = (question == null)? null : "Option A";
在上面的例子中,如果 question 不为空,我们将 ans 设置为选项 A,否则将 ans 设置为空。
我知道您指定了“无条件”,但是三元“如果”呢?
num = (num != 0) ? numerator : 0;