Swift语言指南(三)--语言基础之整数和浮点数

 

整数

 

整数指没有小数的整数,如42,-23。整数可以是有符号的(正数,零,负数),也可以是无符号的(正数,零)。

Swift提供了8,16,32,64位形式的有符号和无符号的整数,这些整数遵循与C语言相似的命名规则。如8位无符号整数的类型为UInt8,32位有符号整数的类型为Int32,和Swift语言的其它类型一样,这些整型命名以大写字母开头。

 

整数的边界

你可以通过minmax属性为每一个整数类型指定一个最小值或最大值:

1 let 最小值 = UInt8.min // 最小值 等于 0,类型为 UInt8
2 let 最大值 = UInt8.max // 最大值 等于 255,类型为 UInt8

这些属性(maxmin等)的值与对应的数字宽度(size)一致(如上例中的Unit8),因此可以在表达式与其它同一类型的值一起使用。

 

Int

大多数情况下,你不需要选择代码中所使用的整数宽度。Swift提供了一个额外的整数类型--Int,它与当前平台的原生字长宽度(native word size)一致。

·32 位平台,IntInt32 宽度一致。

·64 位平台,IntInt64 宽度一致。

除非你需要处理特定宽度的整数,在代码中应该坚持使用 Int 表示整数。这样可以保证代码的一致性及互通性。即使是在 32 位平台,Int 也能存储 -2,147,483,6482,147,483,647 之间的任意数值,这对于很多整数区间而言已经够大了。

 

UInt

Swift也提供了一个无符号的整数类型--UInt它与当前平台的原生字长宽度(native word size)一致。

· 在 32 位平台,Int 与 Int32 宽度一致。

· 在 64 位平台,Int 与 Int64 宽度一致。

注意:

只有在特别需要宽度与平台原生字长一致的时才需要使用无整数类型 UInt。否则应使用 Int,即使要存储的值一定是非负数。坚持使用 Int 表示整数值有助于保证代码互通性、避免不同数据类型的转换,并且与整数类型推断相匹配,参见类型安全及类型推断(下章将会译到)。

 

 

浮点数

 

浮点数指有小数部分的数字,如3.14159, 0.1, 和 -273.15。

浮点数能表示比整数更宽泛的值域范围,而且,能保存比整数更大或更小的值。Swift提供了两种有符号的浮点数类型:

· Double 表示一个 64 位浮点数。在浮点数值非常大或非常精确时使用它。

· Float 表示一个 32 位浮点数。在浮点数值不需要 64 位精度时使用它。

 

注意:

Double 有15 个十进制有效数字的精度,而 Float 的精度只有 6 位十进制有效数字。应根据代码所需数值的特点及值域选用合适的浮点数类型。

 

谢谢,Swifter-QQ群:362232993,同好者进~ 

Fork:https://github.com/Joejo/Swift-lesson-for-chinese

 

 

 

 

 

 

 

上一篇:Swift语言指南(二)--语言基础之注释和分号


下一篇:SQL优化器原理 - Join重排