HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 核心数据,NSNumber,整数32和整数64大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在Core Data中,我有许多属性声明为Integer 64,然后通过NSnumber属性访问(认情况下这是).

如果我通过以下方式存储和访问这些值,这是否重要:

NSnumber *mySETVALue = [NSnumber numberWithInt:someIntValue];
[myObject setMynumberProperty:mySETVALue];

int myRetrievedValue = [myObject.mynumberProperty intValue];

或者

NSnumber *mySETVALue = [NSnumber numberWithInteger:someIntegerValue];
[myObject setMynumberProperty:mySETVALue];

NSInteger myRetrievedValue = [myObject.mynumberProperty IntegerValue];

有两种情况我想知道答案:1)如果所需的值用于计算(它包含将转换为货币的数量或值)和2)如果该值只是一个类型基本上只会与自身进行比较,不会用于任何计算.是否可以在一种情况下使用numberWithint和IntValue而不是另外两种情况,或者在两种情况下都必须使用numberWithInteger和IntegerValue?

此外,如果我之前已将所有值存储为[NSnumber numberWithInt:],这是否重要 – 我可以简单地更改现在存储/检索值的方式,或者我是否需要保持一致性以免产生问题当前用户数据?

我对32位和64位iOS应用程序的工作特别感兴趣.

另外 – 如果核心数据值是整数32,整数16,整数64等,它会对你的答案产生影响吗?

解决方法

你应该尽可能使用NSInteger.原因是它将与平台无关.在32位架构上,NSInteger将是一个int,长度为64位.

因此,您可以使用之前的int方法 – 它是两者中较小的子集.

出于同样的原因,您存储在Core Data数据库中的内容也可以.将值设置为Integer64的事实可确保将来也可以正确存储长数字.

作为货币的用途也可以,但有一些警告.如果你主要对美分感兴趣,而不是美分,你显然可以将美分跟踪为整数.但是,如果您想进行更复杂的计算,可能涉及一小部分美分,例如某些会计方法或货币转换,并存储这些结果,您需要像浮点数或(更好)双重的东西.

大佬总结

以上是大佬教程为你收集整理的ios – 核心数据,NSNumber,整数32和整数64全部内容,希望文章能够帮你解决ios – 核心数据,NSNumber,整数32和整数64所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。