所以我正在为明天的考试做准备,其中的一部分是完成一个静态的方法。我已经完成了所有的工作,除了一个让我困惑的部分。我想我可能会寻求帮助。
下面是说明,我用粗体显示了令人困惑的部分,并解释了下面的原因。
完成这个静态方法的实现,而无需使用任何标准的Java库方法。仅在抛出异常时才使用“if”语句。
/**
* Computes the series n + n^3 + n^5 + ... n^k.
* k-1 is used if k is even.
* @param n the base of the series
* @param k the bound on the exponent of the last term of the series
* @throw IllegalArgumentException when k is less than 1
*/
public double oddSeries(double n, int k) {
if (k < 1) {
throw new IllegalArgumentException("K is less than 1");
}
double tempN = n;
for (int i = 0; i < k; i++)
tempN = tempN + (n * n);
return tempN;
}因此,我抛出了IllegalArgumentException,并使用了一个if语句允许。如果没有if语句或开关语句,如何检查k是否为偶数?因为一般来说我们会
Boolean kEven = false;
if (k % 2 = 0)
kEven = true;发布于 2015-12-10 20:29:17
您不必检查k是否是,因为在这种情况下必须使用k-1。只需执行以下操作:
k = k - 1 + (k % 2);当k为偶数时,它将执行k-1操作.如果k是奇数,它不会改变k值。
https://stackoverflow.com/questions/34211053
复制相似问题