如何将一个数字始终转换为负数?

9

Math.abs()函数将任何数字转换为正数。但是否有一个我可能遗漏的函数可以支持相反的过程:将任何数字(无论其符号如何)转换为负数?

唯一我能想到的方法是: Math.abs(number) * -1


you can do it manually ! - Abdelrahman Elkady
你是不是指的是类似于-1 * Math.abs()这样的东西? - Luiggi Mendoza
3
number*(-1); 无需使用任何库。 - Apurva
2
@Apurva:如果number是负数,现在它是正数了。 - Makoto
@Makoto 是的,你是对的,应该是 Math.abs()*(-1),就像其他人建议的那样。 - Apurva
显示剩余2条评论
3个回答

22
您可以在 abs 前面加上 - ,像这样:-Math.abs()

奇怪。在某些情况下,我本来期望编译器会出错,但这似乎非常顺利地工作。 - Duncan Jones

11

1
只有输入是正数时,这才会返回负值:https://pl.kotl.in/xFKL1c2o3,但问题是“如何将一个数字始终转换为负数?” - Tomas

0

作为替代方案,您可以使用类似于以下的东西

int y = x < 0 ? x : -x;

但是在我看来,- abs(x) 更易读。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接