TIL
🌱 난 오늘 무엇을 공부했을까?
- 숫자 값과 텍스트 표현 사이를 변환하는 포맷터
- 사용해본 옵션
- numberStyle : 숫자의 스타일을 지정
- roundingMode : 반올림 방법을 지정
- case ceiling
- case floor
- case down
- case up
- case halfEven
- 가장 가까운 정수 쪽으로 반올림하거나 등거리인 경우 짝수 쪽으로 반올림합니다.
- case halfDown
- 가장 가까운 정수 쪽으로 반올림하거나 등거리인 경우 0 쪽으로 반올림합니다.
- case halfUp
- 가장 가까운 정수 쪽으로 반올림하거나 등거리인 경우 0에서 멀어집니다.
- var minimumIntegerDigits: Int
- 소수점 구분 기호 앞의 최소 자릿수입니다.
- var maximumIntegerDigits: Int
- 소수점 구분 기호 앞의 최대 자릿수입니다.
- var minimumFractionDigits: Int
- 소수점 구분 기호 뒤의 최소 자릿수입니다.
- var maximumFractionDigits: Int
- 소수점 구분 기호 뒤의 최대 자릿수입니다.
- var usesSignificantDigits: Bool
- 포맷터가 숫자 서식을 지정할 때 최소 및 최대 유효 자릿수를 사용하는지 여부를 나타내는 부울 값입니다.
- var minimumSignificantDigits: Int
- 숫자 포맷터의 최소 유효 자릿수입니다.
- var maximumSignificantDigits: Int
- 숫자 포맷터의 최대 유효 자릿수입니다.
import Foundation
let number1 = 12345678911234567891234567891.0
let number2 = 1.2345678911234567891123456789
let number3 = 123456789.123456789123456789
let numberFormatter1 = NumberFormatter()
numberFormatter1.numberStyle = .scientific
let numberFormatter2 = NumberFormatter()
numberFormatter2.usesSignificantDigits = true
numberFormatter2.roundingMode = .up
numberFormatter2.maximumSignificantDigits = 25
let numberFormatter3 = NumberFormatter()
numberFormatter3.usesSignificantDigits = true
numberFormatter3.roundingMode = .ceiling
numberFormatter3.maximumSignificantDigits = 30
print("number1 : \(number1)")
print("numberFormatter1: \(numberFormatter1.string(for: number1)!)")
print("numberFormatter2: \(numberFormatter2.string(for: number1)!)")
print("numberFormatter3: \(numberFormatter3.string(for: number1)!)")
print("")
print("number2 : \(number2)")
print("numberFormatter1: \(numberFormatter1.string(for: number2)!)")
print("numberFormatter2: \(numberFormatter2.string(for: number2)!)")
print("numberFormatter3: \(numberFormatter3.string(for: number2)!)")
print("")
print("number3 : \(number3)")
print("numberFormatter1: \(numberFormatter1.string(for: number3)!)")
print("numberFormatter2: \(numberFormatter2.string(for: number3)!)")
print("numberFormatter3: \(numberFormatter3.string(for: number3)!)")
print("")
뭔가 이상한 느낌..