1、let用于定义常量, var用于定义变量
2、变量或常量的类型会根据右侧的代码执行结果,推倒对应的类型,具体是什么类型可以通过 option+鼠标左击查看类型
3、Swift中对类型要求异常严格。
不同类型的数据,不允许直接运算。Swift不会做隐式转换,所有的类型确定,都要有程序员自己负责。
let x = 10
let y = 10.5
//这里就是错误的
//print(x+y)
//正确的做法
print(x + Int(y))
4、类型转化
OC中:(int)y ==>类型转换
swift中Int() ===>结构体的构造函数 Int对应的是个结构体
5、swift中不存在基本数据类型,都是结构体。如上面的Int(y)
6、如果需要制定变量或常量的类型,也可以使用这样的形式:let x: Double = 12
提示:在Swift开发中,极少直接使用指定类型,通常都是做自动推导。
7、关于let和var的选择
如果写一下代码会包如下警告Variable 'a' was never mutated; consider changing to 'let' constant,翻译过来是:a的值从来没有被更改,建议使用let。所以正确的做法是改为var a = 10
//系统警告: Variable 'a' was never mutated; consider changing to 'let' constant
//翻译:a的值从来没有被更改,建议使用let。就是这么智能
var a = 10
let b = 20
print(a+b)
这里使用let,因为这里仅仅修改的是v的属性,并没有修改v的指针地址,所以使用let最为合理。
let v = UIView()
//这里使用let,因为这里仅仅修改的是v的属性,并没有修改v的指针地址,所以使用let最为合理。
v.backgroundColor = UIColor.red