int reverse sign negate()java

edm*_*jia 2 java methods logic negate

要求

假设现有类ICalculator的可用性,它模拟整数算术计算器并包含:

  • 一个实例变量currentValue,它存储计算器的当前int值,并且可以被任何子类访问和修改.

  • 方法add,sub,mul和div

    ICalculator中的每个方法都接收一个int参数,并将其操作应用于currentValue并返回currentValue的新值.因此,如果currentValue的值为8且调用了sub(6),则currentValue以值2结束,并返回2.

因此,您要编写基于ICalculator的子类ICalculator2的定义.ICalculator2类有一个额外的方法,否定,不接受任何参数.否定的效果是反转currentValue的符号.例如,如果currentValue为零,则没有变化,如果是-22则变为22,如果为100,则变为-100.此外,negate返回currentValue的新值.

源代码

public class ICalculator2 extends ICalculator {
public int negate() { 
int val = add(0);      
if (val == -22) return val * -1;   
else if (val == 100) return val * -1;   
else return 0;}}
Run Code Online (Sandbox Code Playgroud)

备注:

  • 您的代码在执行期间出错

更多提示:

  • 您可能想要使用100以外的数字

  • 您可能想要使用22以外的数字

  • 你确定要使用:val

提示:

  • 您可能想要使用:<
  • 您确定要使用:=

RGO*_*RGO 14

你不需要做任何奇怪的计算.试试这个:

public class ICalculator2 extends ICalculator {
    public int negate() { 
        return (currentValue = -currentValue);
    }
}
Run Code Online (Sandbox Code Playgroud)