我有两个号码。我希望从两个值中减去较小的数字。
x: 1000
y: 200
=> result: x = 800 and y = 0.
以下对我来说有点难看,那么有没有更好的方法可以做到这一点?
if (x <= y) {
y = y - x;
x = 0
} else {
x = x - y;
y = 0;
}
这应该这样做:
int min = Math.min(x, y);
x -= min;
y -= min;
您可以执行以下操作:
x = x - y;
y = 0;
if(x<0)
{
y = -x
x = 0;
}
作为邓肯答案的补充,如果您只关心减法后不会为零的值,则可以使用此代码段:
int non_zero = Math.abs(x - y); // unless the two are equal of course
这个怎么样: -
int lower = x < y ? x : y;
x -= lower;
y -= lower;
x=x-y;
y=y-x;
if(x<0)
x=0;
else
y=0;