【Foundation-18-1】NSDate - 创建

本文深入探讨了Objective-C与Swift两种编程语言在iOS开发领域的应用,包括它们的特点、优缺点以及如何在实际项目中选择合适的语言。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NSDate   最原始的时间,


typedefdouble NSTimeInterval;


#define NSTimeIntervalSince1970  978307200.0


@interface NSDate :NSObject <NSCopying,NSSecureCoding>


@property (readonly)NSTimeInterval timeIntervalSinceReferenceDate;


// 一般初创建

- (instancetype)initNS_DESIGNATED_INITIALIZER;

- (instancetype)initWithTimeIntervalSinceReferenceDate:(NSTimeInterval)tiNS_DESIGNATED_INITIALIZER;

- (instancetype)initWithCoder:(NSCoder *)aDecoderNS_DESIGNATED_INITIALIZER;


     NSDate *date = [[NSDate alloc]init];    // 当前时间
     NSDate *date2 = [[NSDate alloc]initWithTimeIntervalSinceReferenceDate:0];   // 2001年1月1日0点整为基准
    
//    NSDate *date3 = [[NSDate alloc]initWithCoder:coder];


    

    


@end


@interface NSDate (NSDateCreation)


// 类方法(同下)

+ (instancetype)date;

+ (instancetype)dateWithTimeIntervalSinceNow:(NSTimeInterval)secs;

+ (instancetype)dateWithTimeIntervalSinceReferenceDate:(NSTimeInterval)ti;

+ (instancetype)dateWithTimeIntervalSince1970:(NSTimeInterval)secs;

+ (instancetype)dateWithTimeInterval:(NSTimeInterval)secsToBeAdded sinceDate:(NSDate *)date;



// 实例方法

- (instancetype)initWithTimeIntervalSinceNow:(NSTimeInterval)secs;

- (instancetype)initWithTimeIntervalSince1970:(NSTimeInterval)secs;

- (instancetype)initWithTimeInterval:(NSTimeInterval)secsToBeAdded sinceDate:(NSDate *)date;


    NSDate *date1 = [[NSDate alloc]initWithTimeIntervalSinceNow:60];    // 当前时间 +60s
    NSDate *date2 = [[NSDate alloc]initWithTimeIntervalSince1970:0];    // 1970年1月1号 0点整为基准
    NSDate *date3 = [[NSDate alloc]initWithTimeInterval:60*60*24 sinceDate:date3]; // 以某个date 为基准
    




// 未来,过去

+ (id/* NSDate * */)distantFuture;

+ (id/* NSDate * */)distantPast;

//    NSDate *date = [NSDate distantFuture];    // 4001年1月1日0点整
    NSDate *date = [NSDate distantPast];        // 1年12月30日0点5分43秒 不是很准




@end


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值