整型
Swift提供8,16,32,64位形式的有符号及无符号整数,这些整数类型遵循C语言的命令规范,如8位无符号整型类型为UInt8,32位有符号整数类型为Int32
Int8 有符号8位整型
Int16 有符号16位整型
Int32 有符号32位整型
Int64 有符号64位整型
Int 平台相关有符号整型
UInt8 无符号8位整型
UInt16 无符号16位整型
UInt32 无符号32位整型
UInt64 无符号64位整型
UInt 平台相关无符号整型
查看整型范围
println("UInt8 Range: \(UInt8.min) - \(UInt8.max)"); //输出 UInt8 Range: 0 - 255
浮点型
浮点型主要用来存储小数数值,也可以用来存储范围较大的整型,他分为浮点数(float)和双精度浮点数(double)
float 32位浮点数
double 64位浮点数
var my_double:Double = 123.123
数字的表示方式
整型和浮点型都是数字类型,那么在给这些类型的变量或常量赋值的时候,我们如何表示这些数字呢?下面我们介绍下进制数字和指数的表示方式
进制数的表示方式
二进制数 以0b为前缀
八进制数 以0o为前缀
十六进制数 以0x为前缀
var my16 = 0x10dd0 println(my16) //输出 69072
指数表示方式
如果采用十进制表示指数,需要用e表示,如e2表示10的2次方
println(10e2) //输出 1000.0
数字之间的转换
Swift是一种安全的语言,对于类型检查非常严格,不同类型之间不能之间随便转换
类型转换
小范围转换为大范围
var i8:Int8 = 123; println(UInt16(i8))
大范围转换为小范围
var i64:Int64 = 33333333333333 println(UInt8(i64))
如果变量超过被转换类型的最大范围,会抛出一个异常
file:///Users/liulibo/my/helloworld.playground/: error: Playground execution aborted: Execution was interrupted, reason: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0).
布尔型
布尔型只有两个值:true和false,不能像Object-C那样使用1来代替true
元组类型
元组(tuple)这个词很抽象,他是一种数据结构,在数学中应用广泛,在计算机科学中,元组和关系型数据库的基本概念,元组表中的每列是一条记录,每列是一个字段,因此在二维表里,元组也成为记录
var tuple1 = ("one","two"); println((tuple1.0)); //输出 one var tuple2 = (id:"123",name:"1v20.com") println("id:\(tuple2.id) name:\(tuple2.name)") //输出 id:123 name:1v20.com