Swift3.0教程(二)-基本数据类型
整形整形是指不包括小数的数字类型,包括有符号数和无符号数,比如32,-20都是整形。swift提供了8位,16位,32位和64位的有符号和无符号的整数。他们的命名和C语言差不多, 整数边界整数都有一个最大值和最小值,可以通过 let minValue = UInt8.min // 最小值 0
let maxValue = UInt8.max // 最大值是255
Int大多数情况下,我们在使用的时候直接使用 UInt同样,如果是无符号类型,直接使用 浮点型比起整数,浮点数有更高的精度,所以它可以存储比 类型安全和类型推断Swift是一个类型安全语言,类型安全语言鼓励开发者把变量或是常量的类型写的清晰名了。比如一个 let name = "dog"
系统会自动推断出name的类型为 let myInt = 30
系统可以推断出myInt类型为整形。 let pi = 3 + 0.14159
系统推断pi为 进制
let decimalInteger = 17
let binaryInteger = 0b10001 // 17 的二进制
let octalInteger = 0o21 // 17 八进制
let hexadecimalInteger = 0x11 // 17 十六进制
幂运算,十次方使用 幂运算,二次方使用 p
为了数字看起来易读可以使用_标注数字.官方文档示例如下 let paddedDouble = 000123.456
let oneMillion = 1_000_000
let justOverOneMillion = 1_000_000.000_000_1
类型转换在使用整形类型的时候,需要注意的是不能出现使用无符号整型存储负数或是存储大于或小于类型临界值的情况。比如 //使用无符号整形存储负数将会报错
let cannotBeNegative: UInt8 = -1
//存储大于或小于类型值的数就会报错
let tooBig: Int8 = Int8.max + 1
let tooSmall: Int8 = Int8.min - 1
两个类型不同的变量或是常量都是不能叠加的,必须把他们转化到相同的数据类型。 let twoThousand: UInt16 = 2_000
let one: UInt8 = 1
let twoThousandAndOne = twoThousand + UInt16(one)
整形转化为浮点型也是非常容易的。 let three = 3
let pointOneFourOneFiveNine = 0.14159
let pi = Double(three) + pointOneFourOneFiveNine
总结:不同类型不能相加,需要类型转化。转化用 类型别名类型别名就是给类型起一个新的名字,使用的时候使用自己定义的别名即可。类型所能使用的东西别名都可使用,比如类型所能存储的最小值。 typealias AudioSample = UInt16
var maxAmplitudeFound = AudioSample.min
布耳型定义一个基本的布尔类型很容易。 let zeroIsZero = true
let zeroIsOne = false
不过因为swift语言是安全的语言,所以语法比起OC规范了很多,在OC里面可以直接把数字或是0赋值给布耳型。这在swift里是不允许的。下面的写法是错误。 let isOne = 1
if isOne {
}
不过在if里进行值的比较是允许的。 let isOne = 1
if isOne == 1 {
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |