1.!表示确定可选是有值的 叫做可选所对应的值强制去包装
? 对非可选变量或者常量不可以使用nil。如果代码中常量或者变量需要处理没有值的情况,请声明为合适类型的可选。如果没有提供默认值,则会被自动设置为nil
like : var demoTest: String?
2.断言assert()使用条件
1.一个整形的下表索引被传递给需要通过下标访问的某种实现,但是下表索引太大或者太小。
2.为某个方法传递一个值,但是该值不合法,因为函数无法完成它的任务
3.一个可选目前为nil,但是非nil才是代码可以继续成功执行的必要条件
断言被触发 程序将终止运行 报错