Lined Notebook

[Swift] 소수점이 있는지 없는지 확인하는 방법

by 사슴비행기

%를 이용하면 간단하게 확인할 수 있다.

1로 나누었는데 나머지가 0이 아니면 소수점이 있는 것이다.

 

그런데 플레이그라운드에서 

 

let a: CGFloat = 5.0
let b: CGFloat = 5.5

let c = a % 1 == 0 ? true : false
print(c)

let d = b % 1 == 0 ? true : false
print(d)

이렇게 하니 '%' is unavailable: Use truncatingRemainder instead

라는 오류가 떴다.찾아보니, Swift 3부터는 truncatinRemainder로 쓴다고 한다.

 

let a: CGFloat = 5.0
let b: CGFloat = 5.5

let c = a.truncatingRemainder(dividingBy: 1.0) == 0 ? true : false
print(c)	//true

let d = b.truncatingRemainder(dividingBy: 1.0) == 0 ? true : false
print(d)	//false

이렇게 작성하지 잘 되는 것을 확인했다.

 

 

 

참고한 글


https://stackoverflow.com/a/40495396

 

What does "% is unavailable: Use truncatingRemainder instead" mean?

I get the following error when using code for an extension, I'm not sure if they're asking to just use a different operator or modify the values in the expression based on an internet search. Erro...

stackoverflow.com

 

블로그의 정보

Beautiful Coding

사슴비행기

활동하기