Swift中的Int32和Int32有什么区别?

vmjh9lq9  于 2023-03-16  发布在  Swift
关注(0)|答案(4)|浏览(216)

Core Data中,可以存储Int16Int32Int64,但与Int不同。它们存在的原因是什么?如何使用它们?

bhmjp9jg

bhmjp9jg1#

根据Swift文档

整数

在大多数情况下,你不需要选择一个特定大小的整数,Swift提供了一个额外的整数类型Int,它的大小与当前平台的原生字长相同:

在32位平台上,Int与Int 32大小相同。
在64位平台上,Int与Int 64大小相同。

除非需要使用特定大小的整数,否则请始终在代码中对整数值使用Int。这有助于代码的一致性和互操作性。即使在32位平台上,Int也可以存储-2,147,483,648到2,147,483,647之间的任何值,并且对于许多整数范围来说都足够大。

vfhzx4xs

vfhzx4xs2#

Swift's Int是 Package 器,因为它具有与平台容量相同的大小(32位平台上的Int32和64位平台上的Int64)。
作为一个程序员,除非你真的需要,否则你不应该声明一个依赖于平台的整数(例如Int 32,Int 64)。例如,当你在32位平台上工作时,你可以声明Int64而不是Int

  • Int32:4个字节:从-2147483648到+2147483647
  • Int64:8个字节:从-9223372036854775808到+9223372036854775807
lmvvr0a8

lmvvr0a83#

Int”后面的数字表示它使用了多少位,当你使用int来表示一些很短或者几乎不必要的东西时,比如一个列表中跟随一个特定参数的对象的运行计数,我通常使用UInt8,它是一个最大值为256的整数(2^8),最小值为0,因为它是无符号的(这是UInt8和Int8之间的差异)。如果它是有符号的,(或者变量前面没有“U”),那么它可以是负的。Int16,Int32,和Int64。使用更小的Int类型的好处不是很大,所以如果你不想的话,你真的不需要使用这些类型。

hivapdat

hivapdat4#

如果你运行的是32位或64位处理器的笔记本电脑或iOS设备,性能不会有任何节省。只要使用Int8,CPU不会只使用8位,无论你使用什么,CPU都会使用它的整个位宽,因为硬件已经在芯片中了...
现在,如果您有一个8位CPU,那么使用Int32将需要编译器执行一系列的后翻操作和魔术来使32位Int工作

相关问题