首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSNumber和NSTimeInterval

NSNumber和NSTimeInterval
EN

Stack Overflow用户
提问于 2011-07-25 21:14:46
回答 4查看 19.1K关注 0票数 6

我正在尝试获取以毫秒为单位的系统时间。为此,我宣布:

代码语言:javascript
复制
 NSNumber *createdTimeInMilliSec; //in class declaration

在我的一个实例函数中,我这样做:

代码语言:javascript
复制
 self.createdTimeInMilliSec= ([NSDate timeIntervalSinceReferenceDate]*1000); //ERROR: incompatible type for argument 1 of 'setCreatedTimeInMilliSec:'

timeIntervalSinceReferenceDateNSTimeInterval格式返回,那么如何将其转换为NSNumber呢?或者我做错了什么?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-07-25 21:19:18

NSTimeInterval的类型定义如下:typedef double NSTimeInterval;

要使用创建NSNumber,请使用:

代码语言:javascript
复制
NSNumber *n = [NSNumber numberWithDouble:yourTimeIntervalValue];
票数 25
EN

Stack Overflow用户

发布于 2013-05-04 02:08:52

我不确定从其他答案中是否清楚-但NSTimeInterval实际上只是一个类型定义的double。您可以通过执行[NSNumber numberWithDouble:timeInterval]或更简洁的@(timeInterval)来从中获得NSNumber。

票数 2
EN

Stack Overflow用户

发布于 2011-07-25 21:18:48

NSTimeInterval是一个双精度类型定义函数。所以请按如下方式使用NSNumber的便捷构造函数numberWithDouble:

代码语言:javascript
复制
self.createdTimeInMilliSec= [NSNumber numberWithDouble:([NSDate timeIntervalSinceReferenceDate]*1000)];
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6816703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档