Swift数据类型
Swift中的数据类型包括:整型、浮点型、布尔型、字符串、元组、集合、枚举、结构体和类等。
这些类型按照参数传递方式的不同可以分为:值类型和引用类型。值类型就是在赋值或函数传递参数时候,创建一个副本,把副本传递过去,这样在函数的调用过程中不会影响原始数据。引用类型就是在赋值或给函数传递参数时候,把本身数据传递过去,这样在函数的调用过程中会影响原始数据。
在上述数据类型中,整型、浮点型、布尔型、字符串、元组、集合、枚举和结构体属于值类型,而类属于引用类型。
整型
Swift提供8、16、32、64位形式的有符号及无符号整数。这些整数类型遵循C语言的命名规约,如8位无符号整数的类型为UInt8,32位有符号整数的类型为Int32
/Users/Desktop/屏幕快照 2016-06-14 下午1.35.29.png
除非要求固定宽的整型,否则一般我们只使用Int或UInt,这些类型能够与平台保持一致。
浮点型
浮点型主要用来储存小数数值,也可以用来储存范围较大的整数。它分为浮点型(float)和双精度浮点数(double)两种,双精度浮点数所使用的内存空间比浮点数多,可表示的数值范围与精确度也比较大。
注意:Double是默认浮点型,如果我们要使用Float类型,就不能使用自动推断,而是要在声明的时候明确指定Float类型。
数字表达式
整型和浮点型都表示数字类型。
进制数字表示:
我们为一个整数变量赋值十进制数、二进制数、八进制数、十六进制数。它们的表示方式如下:
- 二进制数,以0b为前缀,0是阿拉伯数字,不要误认为是英文字母o,b是英文小写字母,不能大写。
- 八进制数,以0o为前缀,第一个字符是阿拉伯数字0,第二个字符是英文小写字母o,必须小写。
- 十六进制数,以0x为前缀,第一个字符是阿拉伯数字0,第二个字符是英文小写字母x,必须小写。
指数表示:
我们在进行数学计算的时候往往会用到指数表示的数值。如果采用十进制表示指数,需要使用e(大写或小写的)表示幂,e2表示10^2.
采用十进制指数表示的浮点数示例如下:
var myMoney = 3.36e2 var interestRate = 1.56e-2
其他表示:
在Swift中,为了阅读的方便,整数和浮点数均可添加多个零或下划线以提高可读性,两种格式均不会影响实际值。
数字类型之间的转换
Swift是一种安全的语言,对于类型的检查非常严格,不同类型之间不能随便转换。
布尔型(Bool)只有两个值:true和false。它不能像Objective-C一样使用1替代true,使用0替代false。
元组类型
元组(tuple)这个词很抽象,它是一种数据结构,在数学中应用广泛。在计算机科学中,元组是关系数据库中的基本概念,元组表中的一条记录,每列就是一个字段。因此在二维表里,元组也称为记录。
元组将多个相互关联组值合为单个值,便于管理和计算。元组内的值可以是任意类型,各字段类型不必相同。元组在作为函数返回多值时尤其有用。