Programing

스위프트-절대 값으로 변환

lottogame 2020. 5. 20. 07:46
반응형

스위프트-절대 값으로 변환


정수에서 절대 값을 얻는 방법이 있습니까?
예를 들어

-8  
to  
 8

Int를 부호없는 값으로 변환한다고 가정하지만 UInt ()를 이미 사용하려고했지만 작동하지 않았습니다.


표준 abs()기능은 여기에서 훌륭하게 작동합니다.

let c = -8
print(abs(c))
// 8

Swift 5에서는 정수를 절대 값으로 변환하기 위해 다음 두 가지 방법 중 하나를 사용할 수 있습니다.


#1. 의 절대 값 가져 오기 Int에서 magnitude속성을

Intmagnitude속성을. magnitude다음과 같은 선언이 있습니다.

var magnitude: UInt { get }

임의의 수치를 들면 x, x.magnitude절대 값이다 x.

다음 코드 스 니펫은 인스턴스 magnitude에서 절대 값을 얻기 위해 property 를 사용하는 방법을 보여줍니다 Int.

let value = -5
print(value.magnitude) // prints: 5

# 2. Intfrom abs(_:)메소드 의 절대 값 얻기

Swift에는 abs(_:)method 라는 전역 숫자 함수가 있습니다. abs(_:)다음과 같은 선언이 있습니다.

func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric

주어진 숫자의 절대 값을 반환합니다.

다음 코드 스 니펫은 인스턴스 abs(_:)에서 절대 값을 얻기 위해 전역 함수 를 사용하는 방법을 보여줍니다 Int.

let value = -5
print(abs(value)) // prints: 5

숫자를 강제로 변경하거나 긍정적으로 유지하려면.
방법은 다음과 같습니다.

abs() for int
fabs() for double
fabsf() for float

double 또는 Int에서 절대 값을 얻으려면 fabsfunc을 사용하십시오 .

var c = -12.09
print(fabs(c)) // 12.09
c = -6
print(fabs(c)) // 6

참고 URL : https://stackoverflow.com/questions/24159627/swift-convert-to-absolute-value

반응형