비교도 해보자

김하민·2024년 12월 23일
1

두 날짜를 비교하는 중위 연산자들 (==, !=, <, >, <=, >=)

딱히 설명이 필요할까 싶습니다.

스크린샷으로 갈음합니다.

compare(Date) -> ComparisonResult

이건 위에서 본 중위 연산자들이랑 비슷한데요,

리턴값이 Bool이 아니라, ComparisonResult라는 Enum 값입니다.

Enum 값이기에, Switch-case 문에서 사용하기 유용하겠죠?

.rawValue를 붙여서 1, 0, -1 정수값으로 나타낼 수도 있긴 한데....
사실 그럴 바에 중위 연산자들을 쓰는 게 낫지 않나...?

여튼 코드 예시를 보여드리겠습니다:

이해가 잘 되셨길 바라며...

다음 항목으로 넘어가도록 하겠습니다.

distance(to: Date) -> TimeInterval

이 친구는 간단합니다.

두 Date 간 TimeInterval을 알려줍니다.

보면 바로 이해 되실겁니다.

참 쉽죠? (2)

timeIntervalSince(Date) -> TimeInterval

바로 위의 distance(to:)와 똑같은 친구 아니냐고요?

비슷합니다.

아빠의 이름이 진화승우라는 이름의 아들이 있다고 하면,

승우아빠가 진화냐 진화아들이 승우냐 그 차이입니다.

서순이죠.

조금 헷갈리셨다면 다시 찬찬히 읽어보시면 이해가 되실 겁니다.

timeIntervalSinceNow/ReferenceDate/1970

네... 기준점 차이입니다. 이것도 별거 없으니 스샷으로 갈음합니다.

addTimeInterval(TimeInterval) / addingTimeInterval(TimeInterval)

둘 다 이름 그대로 Date에 TimeInterval을 더합니다.

앞에 붙는 단어가 add와 adding라는 차이가 있는데요.

둘의 차이는 Date를 추가로 반환하냐 아니냐의 차이입니다.

그래서 adding은 let 상수에도 쓰일 수 있지만,

add는 그렇게 못 씁니다.

변수로 바꿔주니 잘 되네요.

그럼 다음에 계속...

0개의 댓글