Swift语言基本数据类型

整型

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表示102次方

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