官术网_书友最值得收藏!

Optionals, unwrap, and force unwrap

In the real world, we don't always know the answer to a problem, and problems can occur if we blindly assume that someone does. The same is true in programming languages, especially when dealing with external systems that we may not control. In many languages, including Objective-C (until recently), there was no way to indicate that something being declared may not exist at the time you attempt to access it. This would lead to either fragile code that could have broken if a nil unexpectedly found its way in or tests being run all over the code to ensure that a value did exist where it was needed, which added complexity and increased the boilerplate code that had to be written.

The nil or null term is used in programming languages to denote the absence of a value, not to be confused with the number 0 as the value or the empty (zero length) string "", they would be something, this... is nothing. Swift uses nil, and this can be assigned to a variable to remove any value currently assigned, replacing it with nil or nothing.

With a focus on Swift being type-safe and making it easier to write safe code, this ambiguity had to be addressed, and the Swift language does this with the use of optionals.

主站蜘蛛池模板: 镇坪县| 潞城市| 长葛市| 黄冈市| 南平市| 翼城县| 德庆县| 彩票| 上饶县| 乐都县| 克东县| 图木舒克市| 渭南市| 陈巴尔虎旗| 西平县| 普安县| 芜湖市| 罗田县| 宁津县| 平江县| 汉川市| 吉安县| 顺昌县| 木兰县| 秦皇岛市| 诸暨市| 西青区| 巴林右旗| 凌源市| 亳州市| 奈曼旗| 八宿县| 乳源| 建德市| 都兰县| 中西区| 房产| 左云县| 本溪| 祥云县| 栖霞市|