我的代码不在Main类中工作

时间:2017-12-15 11:35:44

标签: java class main

我想在NumeicVariable类中计算并在Main类中显示结果,但我的代码无法正常工作。

主要课程是:

package com.sajjad.java;

public class Main {

    public static void main(String[] args) {

        int value = 20;
        System.out.println(NumericVariables.drawOne(value)); //
        System.out.println(NumericVariables.addOne(value));  //

    }
}

和NumericValues是:

package com.sajjad.java;

import com.sun.org.apache.xpath.internal.SourceTree;

public class NumericVariables {
    public static int addOne(int number){
        return number++;
    }

    public static int drawOne(int number) {
        return number--;
    }
}

注意:结果是20

1 个答案:

答案 0 :(得分:1)

使用后递增和递减运算符:

    return number++;
    return number--;

例如:

public static int addOne(int number) {
    return ++number;
}

值编号递增但仅在下一个语句后立即增加 因此,当您返回时,将返回与参数相同的值。

这是同样的事情:

public static int drawOne(int number) {
    return number--;
}

number将永远不会递减,因为该数字会在与递减相同的语句中返回。

您有几种解决方法:

做两次事情:

public static int addOne(int number) {
    number++;  // post increment
    return number; // value incremented here
}

使用预增量运算符:

public static int addOne(int number) {
    return ++number; // incremented right now
}

或者更简单地用1增加:

public static int addOne(int number) {
    return number+1; // incremented right now
}

与减量运算符完全相同。