【发布时间】:2017-09-04 20:09:55
【问题描述】:
我这里有这段代码,我正在尝试使用:
public class RationalNumber() {
private int num;
private int den;
public RationalNumber(int n, int d) {
num = n;
den = d;
}
public void multiply(RationalNumber r) {
/* missing code */
}
public int getNum() {
return num;
}
public int getDen() {
return den;
}
}
在 public void multiply 方法中,我需要用方法 multiply 将 RationalNumber 的分子乘以 r 的分子,并将这个 RationalNumber 的分母乘以 r 的分母。下列哪一项可以用来替换 /* 缺失的代码 */ 使得 multiply().
我已将范围缩小到:
num = num * r.num;
den = den * r.den;
或
this.num = this.num * r.num;
this.den = this.den * r.den;
或
num = num * r.getNum();
den = den * r.getDen();
有人能告诉我其中哪一个(或多个)将使该方法按预期工作吗?
【问题讨论】:
-
为什么不试试看呢?
-
只是以第四/第五种方式夹起来:
num *= r.num;或num *= r.getNum();。
标签: java class object methods this