《Core Data应用开发实践指南》一2.5 Integer 16、Integer 32与Integer 64-阿里云开发者社区

开发者社区> 华章计算机> 正文

《Core Data应用开发实践指南》一2.5 Integer 16、Integer 32与Integer 64

简介:
+关注继续查看

本节书摘来自华章出版社《Core Data应用开发实践指南》一书中的第2章,第2.5节,作者 (美)Tim Roadley,更多章节内容可以访问云栖社区“华章计算机”公众号查看

2.5 Integer 16、Integer 32与Integer 64

对于属性来说,这三种数据类型是比较相似的,它们都表示没有小数点的整数,唯一区别就在于能够表示多大或多小的数。由于Core Data使用“带符号的整数”(signed integer),所以取值范围从某个负数开始,而不是从0开始:

  1. Integer 16的取值范围是–32 768至32 767
  2. Integer 32的取值范围是–2 147 483 648至2 147 483 647
  3. Integer 64的取值范围是–9 223 372 036 854 775 808至9 223 372 036 854 775 807
    数字的值越大,所占的内存就越多。在这三种整数类型之间选择时,你需要思考当前属性的最小取值和最大取值。如果不能确定的话,那么通常可以选用Integer 32。要是程序出错了,那就说明需要选用一种取值范围更广的数据类型,此时可以把属性的类型提升到Integer 64。我们需要升级托管对象模型才能完成这种修改操作,第3章将会讨论此话题。

Integer使用以2为底的数制,更通俗的说法是二进制。计算机执行整数运算的速度要比执行浮点数运算更快,因为它无需考虑运算所产生的余数。比方说,如果计算10除以3的话,那么只要算出结果是3就好了,余下的那个1可以丢弃。这种运算有个专门的术语,叫做低精度(low precision)运算。如果要用整数来表示货币,那么笔者强烈建议你用“1”表示“1分钱”。这样的话,在执行财务计算的时候就不会出现舍入误差了。
标准整数的最小取值与最大取值可以从stdint.h文件里看到:在Xcode中打开任意类文件,输入INT32_MAX,然后用鼠标右击这几个字符,选择Jump to Definition,你会看到stdint.h文件里定义了各种整数的最小取值与最大取值。你也会注意到:无符号整数的最大取值要比带符号整数的大,这是因为它们的值不会低于0。Core Data只使用带符号的整数,这样做的优点是既能表示负值,又能表示正值,缺点则是最大取值要比无符号整数的小。
根据实体来创建NSManagedObject子类时,如果实体中某个属性的类型为Integer 16、Integer 32或Integer 64,那么在创建好的子类里,相关特性的类型就会是NSNumber。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
探秘IntelliJ IDEA v13的应用服务器
原文:探秘IntelliJ IDEA v13的应用服务器 IntelliJ IDEA v13应用out-of-the-box支持众多企业级和开源的服务器,包括:GlassFish、WebLogic、 JBoss EAP、Wildfly、WebSphere、Tomcat、TomEE、Jetty、 Geronimo、Resin和Virgo。
884 0
【大数据新手上路】“零基础”系列课程--如何通过大数据开发套件Data IDE玩转大数据
老板每天都要出这些业务数据(销售总额、总交易量、总点击次数、总加入购物车次数、总加入收藏夹次数...),我得想个一劳永逸的方法了…
7745 0
《Lua游戏开发实践指南》一1.2更好的开发方式
本节书摘来华章计算机《Lua游戏开发实践指南》一书中的第1章 ,第1.2节,(美)Paul SchuytemaMark Manyen著 田剑译 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1062 0
区块链技术开发 结合金融产业的两大特点
区块链技术开发是数字时代的金融应用主要方向,发展程度有别于20世纪的传统金融,区块链技术改变了金融服务的表达方式和信任体系,毫不夸张的说,区块链技术开发的地位等同于蒸汽动力革命,是支撑第二次数字变革的大趋势,同时也将对互联网金融的发展产生深远影响。
1033 0
10059
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载