Swift中可选绑定引发的值类型与引用类型的思考
一、前言
Swift
相较于OC
是一门类型更加安全的语言,其中引入的Optional
类型便是为了增强取值可靠性的一种方式。然而在新旧语言的转换过程中总是会踩到坑中,由于自己对于这个概念的理解还没有到位,在最近一次的实践中就遇到了由于Optional Binding
引发的问题。
二、问题场景
textFiled
中的text
属性是一个可选(optional
)类型,在对输入状态进行处理的时候肯定会涉及到对输入内容的逻辑操作。在OC
中这种操作还是很直接的,直接使用.
语法(textField.text
)获取属性进行判断。
但在swift
中text
是一个可选属性,直接对属性进行操作就比较冗余了。因此我们往往会写出如下的代码。
1 | if var text = textField.text { |
打印textField.text
就会发现并不是text
赋值的值。