首页 > 解决方案 > 找到一个数字的最大值为我提供了 Optional()

问题描述

当试图在我的数组中找到最大的数字并将其显示在标签上时,我得到了我的解决方案Optional()。我正在做什么来导致这种情况,我如何才能Optional()在标签中没有围绕它的情况下显示我的解决方案。

class ViewController: UIViewController {
@IBOutlet weak var game1: UITextField!
@IBOutlet weak var game2: UITextField!
@IBOutlet weak var game3: UITextField!

@IBOutlet weak var series: UILabel!
@IBOutlet weak var average: UILabel!
@IBOutlet weak var high: UILabel!

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view.

}

@IBAction func calculate(_ sender: Any) {

   guard
            let text1 = game1.text,
            let text2 = game2.text,
            let text3 = game3.text
    else { return }

    guard
            let game1Results = Int(text1),
            let game2Results = Int(text2),
            let game3Results = Int(text3)
    else { return }

    let gameResultsArray = [game1Results, game2Results, game3Results]

    high.text = "\(String(describing: gameResultsArray.max()))"
}

标签: iosswift

解决方案


gameResultsArray.max()返回可选值

max() @warn_unqualified_access func max() -> Element?

返回序列中的最大元素。

像这样更改您的代码

let gameResultsArray = [game1Results, game2Results, game3Results]
    if let maximumVal = gameResultsArray.max() {
    high.text = String(maximumVal)
    }

推荐阅读