可选型的概念
- 数据类型+?将会构成一种新的类型,可选型,String?为字符串可选型,,在swift中,空的概念略有不同,java中,如果一个对象变量,没有指向,为null;一个int类型的变量如果没有初始化,值为0,null和0 意为没有,在swift中,空是一种完全独立的数据类型,nil的位置和Int,String的地位是一样的,他不是对象或者数据的一种特殊状态,而是一种新的对象。这也就意味着代码中(1)的部分是编译错误的,会提示,nil类型是不能和String类型进行的比较的,该设计的目的是为了使swift更具安全性,因为任何对象都不能设置为nil,就如同String类型的数据不能设置为int类型的数据,他们是完全不同的对象,可以避免潜在空指针的发生。
1 | //(1) |
where与模式匹配
1 | //switch中使用where语句 |
guard关键字
1 | //guard else 防止数据错误,也可以认为是需要满足的一种先决条件 |
String类型
1 | //字符串 |