我想在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
答案 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
}
与减量运算符完全相同。