[C#] C #에서 양수를 음수로 변환

다음과 같이 음수를 양수로 변환 할 수 있습니다.

int myInt = System.Math.Abs(-5);

양수를 음수로 만드는 동등한 방법이 있습니까?



답변

어때요?

myInt = myInt * -1


답변

int myNegInt = System.Math.Abs(myNumber) * (-1);


답변

int negInt = -System.Math.Abs(myInt)


답변

다른 것을 부정적으로 만드는 것과 같은 방법으로, 그 앞에 부정적인 부호를 넣으십시오.

var positive = 6;
var negative = -positive;


답변

응답 한 모든 사람에게 메모

- Math.Abs(myInteger)

또는

0 - Math.Abs(myInteger)

또는

Math.Abs(myInteger) * -1

음수를 음수로 유지하고 양수를 음수로 바꾸는 방법으로

이 접근법에는 하나의 결함이 있습니다. 모든 정수에서 작동하지는 않습니다. Int32유형 의 범위는 “-2 31 “~ “2 31-1 “입니다. “음수”가 하나 더 있음을 의미합니다. 따라서 Math.Abs(int.MinValue)던진다 OverflowException.

올바른 방법은 조건문을 사용하는 것입니다.

int neg = n < 0 ? n : -n;

이 접근 방식은 “모든”정수에 적용됩니다.


답변

쉬운 방법 :

myInt *= -1;


답변

int negInt = 0 - myInt;

또는 부정적인 것으로 보장됩니다.

int negInt = -System.Math.Abs(someInt);