常量和变量
常量和变量把一个名字(比如maximumNumberOfLoginAttempts或者welcomeMessage)和一个指定类型的值(比如数字10或者字符串"Hello")关联起来。常量的值一旦设定就不能改变,而变量的值可以随意更改。
声明常量和变量
常量和变量必须在使用前声明,用let来声明常量,用var来声明变量。下面的例子定义了常量与变量的声明:
let PI = 3.14159
var r = 0
这两行代码可以被理解为:
“声明一个 PI 的常量,并给它一个值3.14159。然后,声明一个 r 的变量并将它的值初始化为0.”
在这个例子中,PI 声明成一个常量,不允许修改。r 声明成一个变量,并初始值为0。
你可以在一行中声明多个常量或者多个变量,用逗号
var x = 1.0, y = 2.0, z = 0.0
注意:
如果你的代码中有不需要改变的值,请使用let关键字将它声明为常量。只将需要改变的值声明为变量。
类型标注
声明常量或者变量的时候可以加上类型标注(type annotation),说明常量或者变量中要存储的值的类型。如果要添加类型标注,需要在常量或者变量名后面加上一个冒号和空格,然后加上类型名称。
这个例子给welcomeMessage变量添加了类型标注,表示这个变量可以存储String类型的值:
var welcomeMessage: String
声明中的冒号代表着“是…类型”,所以这行代码可以被理解为:
“声明一个类型为String,名字为welcomeMessage的变量。”
“类型为String”的意思是“可以存储任意String类型的值。”
welcomeMessage变量现在可以被设置成任意字符串:
welcomeMessage = "Hello"
注意:
一般来说你很少需要写类型标注。如果你在声明常量或者变量的时候赋了一个初始值,Swift可以推断出这个常量或者变量的类型,请参考类型安全和类型推断。在上面的例子中,没有给welcomeMessage赋初始值,所以变量welcomeMessage的类型是通过一个类型标注指定的,而不是通过初始值推断的。
常量和变量的命名
你可以用任何你喜欢的字符作为常量和变量名,包括 Unicode 字符:
let π = 3.14159
let 你好 = "你好世界"
let