본문 바로가기
모바일개발(Mobile Dev)/IOS개발(ObjectC)

NSDate NSTImeInterval

by 테크한스 2015. 9. 11.
반응형


NSDate


+date 메서드는 가장 기본적인 메서드로 현재의 일시를 가져다 준다. 


현재 날짜를 구한다. 

 NSDate *now = [NSDate date]; 


> 현재 일시로부터 지정된 초 만큼 경과한 일시를 구하는 메서드 

+(id) dateWithTimeIntervalSinceNow: (NSTimeInterval) seconds; 

seconds: 현재로부터 경과된 초 단위의 수치를 지정. +가 미래 , -가 과거 

반환값 : 현재부터 지정된 초 단위의 수치만큼 경과한 일시의 인스턴스 



//현재로부터 10초 후의 일시를 취득하는 예 

NSDate *date = [NSDate dateWithTimeIntervalSinceNow:10.0f]; 


NSTimeInterval은 시간길이를 초 단위로 다루는 것으로 double형으로 정의


생성된 일시에 초 단위의 수치를 더해서 간단한 날짜 계산을 할 수 있다. 

[NSDate] 지정된 초 단위의 수치만큼 경과한 일시의 인스턴스를 생성 

-(id) addTimeInterval:(NSTimeInterval) seconds 


//현재로부터 10초 후의 날짜를 취득하는 예 

NSdate *date1 = [NSDate date]; 

NSDate *date2 = [date1 addTimeInterval:10.0f]// 


NSDate는 값을 변경할 수 없는 클래스이므로 위와 같이 날짜를 계산할 때 계산 결과 값으로 새로운 인스턴스를 생성한다. 


일시의 비교 

일시비교에는 같은 일시인지 판단하는 isEqualToDate:메서드와 일시의 크기 비교를 하는 compare:메소드가 있다. 


[NSDate] 일시가 같은지 비교 

-(BOOL)isEqualToDate:(NSDate *)date 

date : 비교할 일시 


[NSDate]일시의 비교 

-(NSComparisonResult)compare:(NSDate *)date 

반환값 

date보다 오래된 날짜 (=NSOrderedAscending) 

date와 일치(=NSOrderedSame) 

date보다 새로운 날짜(=NSOrderedDescending) 

반응형