๋ฉ์๋ ์ ์
func compare(_ other: Date) -> ComparisonResult
- ๋ค๋ฅธ ๋ ์ง์ ๋น๊ตํด์ฃผ๋ ์ธ์คํด์ค ๋ฉ์๋
์ฌ์ฉ ์์
import Foundation
// Date String
let targetDateString = "2022-08-10"
let comparisonDateString = "2022-12-08"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
// Optional Binding
guard
let pastDate = dateFormatter.date(from: targetDateString),
let futureDate = dateFormatter.date(from: comparisonDateString)
else { fatalError() }
// compare(_:) ๋ฉ์๋
// - return Enumeration(ComparisonResult)
switch pastDate.compare(futureDate) {
case .orderedSame:
print("\(futureDate)์ ๊ฐ์์.")
case .orderedAscending:
print("\(futureDate)๋ณด๋ค ๊ณผ๊ฑฐ์์.")
case .orderedDescending:
print("\(futureDate)๋ณด๋ค ๋ฏธ๋์์.")
}
- ๋ ์ง๊ฐ ๋น๊ต ์ ์ ์ฉํ๊ฒ ์ฌ์ฉํ ์ ์์ ๊ฒ ๊ฐ์์.
- Date ์๋ฃํ๋ผ๋ฆฌ ๋น๊ตํ ๋ ์ฌ์ฉํ ์ ์๊ณ , ์ด๊ฒจํ์ ๋ฐํํด์ค๋๋ค.
- ์ด๊ฑฐํ์ ๊ฒฝ์ฐ orderedSame(๋์ผ), orderedAscending(์ด์ ), orderedDescending(์ดํ)์ผ๋ก ๋๋์ด์.
- ๊ธฐ์ค์ ํ๊ฒ ๋ ์ง์
๋๋ค. ํ๊ฒ ๋ ์ง๊ฐ ๋น๊ต ๋ ์ง๋ณด๋ค ~ํ์ง๋ก ํด์ํ๋ฉด ๋ฉ๋๋ค.