gpt4 book ai didi

ios - 如何检查用户输入的答案是否有字母,如果有,您如何将该答案默认为 0?

转载 作者:行者123 更新时间:2023-12-01 15:48:55 25 4
gpt4 key购买 nike

这是我到目前为止的代码,现在当用户输入任何字母时,我的标签什么都不显示,我想弄清楚的是如何将什么都没有“”变成 0。我尝试做一个 if 语句在我的“label.txt =”上,但没有成功。找到我想要的结果的更好方法是什么?

import UIKit

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) {
self.view.endEditing(true)

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]
let sumArray = gameResultsArray.reduce(0, +)
let positiveArray = gameResultsArray.filter {
(item: Int) -> Bool in return item > 0
}

var avgArrayValue = 0

if positiveArray.count == 0
{
avgArrayValue = 0
}else {
avgArrayValue = sumArray / positiveArray.count
}

series.text = "\(sumArray)"
average.text = "\(avgArrayValue)"
if let maximumVal = gameResultsArray.max() {
high.text = String(maximumVal)
}
}
}

最佳答案

这是您需要的,将 String 转换为 Int 并提供默认值 0。不要使用 guard let return 使用此方法:

取而代之的是:

guard let game1Results = Int(text1) else { return }

使用这个:

let game1Results = Int(text1) ?? 0

关于ios - 如何检查用户输入的答案是否有字母,如果有,您如何将该答案默认为 0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61979649/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com