단위가 큰 십진수는 컴마를 통해 구분하는 경우가 많죠. 이런 형식을 지원해야할 경우에는 직접 로직을 만들 수도 있지만 이미 있는 NumberFormatter
타입을 이용해서 간단히 숫자 형식을 변환할 수 있습니다.
저는 메서드를 하나 만들어 보았는데요, 저처럼 메서드로 구성할 수도 있고 프로퍼티의 getter
를 통해 읽어올 때 형식을 설정해줄 수도 있습니다.
func formattedNumber(_ number: Int) -> Result<String, ExpoAppError> {
let numberFormatter: NumberFormatter = NumberFormatter()
numberFormatter.numberStyle = .decimal
guard let formatted: String = numberFormatter.string(from: NSNumber(value: number)) else {
return .failure(ExpoAppError.numberFormattingFailed(number))
}
return .success(formatted)
}
이제 NumberFormatter
를 활용해서 숫자를 더 알아보기 쉽게 나타낼 수 있게 되었습니다!