用let来声明常量,用var来声明变量。
let width = 94 var myVariable = 42
可以在一行中声明多个常量或者多个变量,用逗号隔开。
var x = 0.0, y = 0.0, z = 0.0
类型注解
当你声明常量或者变量的时候可以加上类型注解(type annotation),说明常量或者变量中要存储的值的类型。
var welcomeMessage: String welcomeMessage = "Hello"
可以在一行中定义多个同样类型的变量,用逗号分隔,并在最后一个变量名之后添加类型注解。
var red,green,blue: Double
注:
一般来说你很少需要写类型注解。如果你在声明常量或者变量的时候赋了一个初识值,Swift可以推断出这个常量或者变量的类型。
常量和变量的命名
常量和变量名可以包含任何字符,包括Unicode字符
let π = 3.14159 let 你好 = "你好世界" let 🐶🐮 = "dogcow"
注:常量与变量名不能包含数学符号、箭头、保留的(或者非法的)Unicode码位,连线与制表符。也不能以数字开头,但是可以在常量与变量名的其他地方包含数字。
一旦你将常量或者变量声明为确定的类型,你就不能使用相同的名字再次进行声明,或者改变其存储的值的类型。同时,你也不能将常量与变量进行互转。
如果你需要使用与Swift保留关键字相同的名称作为常量或者变量名,你可以使用反引号(`)将关键字包围的方式将其作为名字使用。无论如何,你应当避免使用关键字作为常量或者变量名,除非你别无选择。
var `var` = 2
你可以更改现有的变量值为其他同类型的值。
var friendlyWelcome = "Hello!" friendlyWelcome = "Bonjour!"
与变量不同,常量的值一旦被确定就不能更改了。
输出常量和变量
你可以用print(_:separator:terminator:)函数来输出当前常量或变量的值:
print(friendlyWelcome)
separator和terminator参数具有默认值,因此你调用这个函数的时候可以忽略它们。默认情况下,该函数通过添加换行符来结束当前行。如果不想换行,可以传递一个空字符串给 terminator参数。例如,print(someValue,terminator:"")。
Swift用字符串插值(String interpolation)的方式把常量名或者变量名当做占位符加入到长字符串中,Swift会用当前常量或变量的值替换这些占位符。将常量或变量名放入圆括号中,并在开括号前使用反斜杠将其转义。
print("The current value of friendlyWelcome is \(friendlyWelcome)")
注:
1.查看常量或变量类型的方法,按住alt键单击这个常量或变量,可以查看它的数据类型。
2.变量的数据类型不能改变,已经给定了一个数据类型,再指定成其他数据类型会报错。
3.control+command+空格 调出系统表情
4.字符串只能用双引号
5.print separator为空格,terminator为回车,separator在print中加分隔符,terminator在print中加换行符
6.类型名称首字母用大写 let imLeixing: Leixing = 231