变量
(1)let 声明常量,var 声明变量,常量只能赋值一次。
(2)常量和变量在声明的同时赋值,编译器会自动推断类型。
(3)在声明时即不赋值也不指定类型,编译会出错,即不能声明类型不确定的变量。
(4)swift的变量是强类型的,变量的类型确定以后,就不能在赋值其他类型数据给变量。
(5)变量在声明的时候(显示指定类型的声明方式)在类型后面加一个?来标记这个变量的值是可选的,默认值为nil。
(6)变量在没有初始化前使用编译错误,除非标记为缺省值
(7)不能将nil直接赋值给变量,标记为缺省值变量的除外
(8)可以将值缺失变量赋值给任意变量,如果值缺失变量为nil赋值语句返回false,有值返回true,可用作条件判断。
var temp = 2 // 编译器自动推断类型方式声明变量
temp = 1.0 // 编译错误 (4)
var temp:Double = 2 // 显示指定类型方式声明变量并赋值
var test // 编译错误(3)
var test:String // 显示指定类型方式声明变量
println(test) // 编译错误(6)
test = nil // 编译错误(7)
var test:String? // 指定变量值缺失
if var name = test {
println("赋值成功")
}
else {
println("缺省值赋值失败")
}
值类型之间转换
swift值之间必须显示转换,可以使用\()在“”内将数值转换成字符串
let label = “The width is"
let width = 98
let height = 100
let str1 = label + String(width)
let str2 = “The height = \(height)”
数组和字典
使用[]创建数组和字典,使用下标或健(key)来访问元素
var shopList = ["catfish","water","tulips"]
shopList[2] = "bottle for water"
var dict = [
"Malcolm": "Captain",
"Kaylee": "Mechanic"
]
dict["Jayne"] = "Public"
数组和字典内元素都是可以修改的,没有提供直接删除和添加元素的方法。数组支持“+”,“+=”运算,不支持“-”运算。字典不支持“+”、“-”运算,但会将没有的key直接添加到字典中。
创建一个空数组或字典
let emptyArray = String[]()
let emptyDictionary = Dictionary<String,Float>()
let 声明的数组和字典是不能修改的,也不能对内部元素进行操作