返回

将 nil 分配给强制展开选项不会使代码崩溃,这是为什么呢?

发布时间:2022-07-27 01:50:52 214
# android

我正在初步构建计算器。目前,代码除了在用户点击它时将数字和 Pi 打印到计算器的标签中之外什么都不做。

1) 什么代码

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var display: UILabel! = nil //Look Here "(

    var userIsInTheMiddleOfTypeing = false

    @IBAction func touchDigit(_ sender: UIButton){
        let digit = sender.currentTitle!
        if userIsInTheMiddleOfTypeing {
            let textCurrentlyInDisplay = display.text!
            display.text = textCurrentlyInDisplay + digit
        } else {
            display.text = digit
        }

        userIsInTheMiddleOfTypeing = true
    }

    @IBAction func performOperation(_ sender: UIButton) {
        userIsInTheMiddleOfTypeing = false
        if let methematicalSymbol = sender.currentTitle {
            if methematicalSymbol == "π" {
                display.text = String(M_PI) // M_PI
            }
        }
    }      
}

2) 用户界面

touchDigit函数链接到所有数字按钮,如下图所示。显示是同时performOperaton是 PI按钮UILable

问题:您可能会找到该行(代码的第三行)UILabel! = nil。我认为将 a 添加nil到强制展开选项会使代码崩溃,但它不会,到目前为止,代码工作正常。这是为什么?

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(2)
按点赞数排序
用户头像