一)Data type
Int, Double, Float, Bool, String, Array,tuple, Dictionary,Optional
Int8,UInt8,Int16,UInt16,Int(32系统长度32,64则为64),UInt
option Type
Any 可以代表除函数以外的任意类型,AnyObject可以代表类的任意实例
用Any可以定义一个包含任何类型的数组。
变量的定义:
默认的变量类型是不需要定义为类型的,需要声明时的写法为:
var varname:Double = 3 // 这种写法被称为 Type Annotation
varname=3 如果不声明varname的类型则被认为是Int,而不是Double
另外,当把小数赋值给一个变量时,swift总是默认使用Double而不是Float
声明常量用let,变量用var
一次定义多个变量,var red, green, blue: Double
输出变量的值
println("The current value of friendlyWelcome is\(friendlyWelcome)")
二)注释
注释可以使// 也可以是/*,其中后者可以多层嵌套
三)分号
除非你想把多个语句写在同一行,否则不需要写分号。
四)数字的表达方法
- let decimalInteger = 17
- let binaryInteger = 0b10001 // 17 in binary notation
- let octalInteger = 0o21 // 17 in octal notation
- let hexadecimalInteger = 0x11 // 17 in hexadecimal notation
println(UInt.max)
两个不同类型的数字如果想相加,需要进行转换
let one:UInt16 = 200
let two:UInt8 = 3
let three =one + UInt16(two)
五)类型别名
类似与C语言中的typedef,swift 提供了typealias关键字
typealias mytype =UInt8
println(mytype.max)
六)tuple
swift的tuple和python有所不同,不可以通过tuple[x]来索引,而是通过tuple.0 tuple.1的形式进行访问
swift的元组是可以进行修改的,与python中元组的概念完全不同。。
var d1 = (200,"test")
println(d1.0)//200
d1.0 =300
println(d1)//(300, test)
var tuple = (400,"ERROR")
var (code, str) =tuple
只需要code情况下也可以这样赋值:
var(code, _) = tuple
也可以给每个成员赋值,然后可以通过成员名访问
var tuple = (error:400, descriptor:"ERROR")
println(tuple.error)
var it:Int = Int(3.14)