整型
Swift 提供了8,16,32和64位的有符号和无符号整数类型。这些整数类型遵循C语言的命名规范,如8位无符号整数类型是 UInt8,32位有符号整数类型是 Int32。像所有Swift的其他类型一样,整数类型采用大写命名法。
在大多数情况下我们不需要指定整数的长度,swift提供了特殊的整数类型 Int(UInt) .长度与当前平台的字长相同。
在32位平台上,Int(UInt)和Int32长度相同。
在64位平台上,Int(UInt)和Int64长度相同。
在64位平台上,Int(UInt)和Int64长度相同。
注意:尽量不要使用UInt,除非你真的需要存储一个和当前平台字长相同的无符号整数。
最好使用Int,即使你要存储的值是非负的。统一使用Int可以提高代码的复用性,避免不同类型数字之间的转换。
整型转换:
不同类型的整数常量或变量,所能存储的值域不同需要显示的进行转换;
- let twoThousand: UInt16 = 2_000
- let one: UInt8 = 1
- let twoThousandAndOne = twoThousand + UInt16(one)
- //twoThousandAndOne is 2001
为了防止精度丢失,应该把小的转为大的。
浮点型:
浮点数类型可以表示比整数类型更大范围的值,可以存储比 Int 类型更大或者更小的数字。
swift 提供了两种浮点数类型:
Float32位浮点数。精度要求不高时使用此类型;
Double64位浮点数。当你需要存储很大或者很高精度的浮点数时使用此类型.
整型 和 浮点型 转换:
整型和浮点型之间转换,必须显示的指定类型;
- let three = 3
- let pointOneFourOneFiveNine = 0.14159
- let pi = Double(three) + pointOneFourOneFiveNine
- //pi is 3.14159
Float 和 Double 之间转换也得显示的指定类型;
- let width:Float = 3.0;
- let length: Double = 4.13521;
- let area = Double(width) * length
- //ares is 12.40563
数字型
数字类型是对 整形 和 浮点型的一个补充。也可以替代 整型和浮点型,在 二进制,8进制,10进制计算中会使用到。
表达式的写法:
let decimalInteger = 17 //10进制的 17
let binaryInteger = 0b10001 //2进制的 17 前缀为0b
let octalInteger = 0o21 //8进制的 17 前缀为0o
let hexadecimalInteger = 0x11 //16进制的 17 前缀为0x
let binaryInteger = 0b10001 //2进制的 17 前缀为0b
let octalInteger = 0o21 //8进制的 17 前缀为0o
let hexadecimalInteger = 0x11 //16进制的 17 前缀为0x
布尔类型
布尔值是了逻辑值,只能是真或假,swift 提供了两个 布尔常量值 : true 、false
let orangesAreOrange = true
let turnipsAreDelicious = false
类型别名
类型别名就是给一个类型定义的一个小名。通过 typealias 关键字进行定义。
- typealias IntNum = Int16 //定义Int16 的别名为 IntNum
- typealias FloatNum = Float //定义Float的别名为 FloatNum
- let numInt : IntNum = 10
- let numFloat : FloatNum = 3.0
- let num = Float(numInt) + numFloat
- //num is 13.0