swift中的可选类型

时间:2020-12-27 10:48:05

可选类型也是Swift语言新添加的对象。主要是为了解决对象变量或常量为空的情况。在前面定义的变量和常量都不能为空。里面必须要有值。

Swift中的可选类型则允许变量(常量)中没有值(被设为nil)。要注意的是,Swift中的nil和OC中的nil不一样。前者的nil表示没有值,而后者的nil表示变量值为空。

可选类型需要在类型后面加一个问号(?)。一个典型的例子是String类有一个toInt方法,该方法会将字符串转换为Int类型。不过这里就有一个问题,字符串中可能包含非数字的字符,这时救护转化失败。如果在其他语言中,不添加错误捕捉,可能会抛出异常,而在Swift中,如果转换失败,就直接返回nil。表示没有返回Int类型的值(反正你想加捕捉异常时做不到的,因为Swift中压根就没有异常捕捉)。这里的toInt方法返回的就是一个可选类型。