web-dev-qa-db-ja.com

タイプ「int」の値をタイプ「String?」の値に割り当てることはできません。

これが私のコードです。私はSwiftを使用する初心者ですが、コードが機能しません。アプリケーションは 'ageInput' textFieldの値を取得し、7を掛けて、resultLabel内に結果を表示する必要があります。私はいつもエラーが発生します:

タイプ「int」の値をタイプ「String?」の値に割り当てることはできません。

class ViewController: UIViewController {
    @IBOutlet weak var resultLabel: UILabel!
    @IBOutlet weak var ageInput: UITextField!
    @IBAction func findAge(sender: AnyObject) {

        var catAge = ageInput.text.toInt() ?? 0

        catAge = catAge * 7 ?? 0

        resultLabel.text = catAge

    }
       override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

どこで私は間違えましたか?

4

試してみてください:

resultLabel.text = String (catAge)
22
Andrey

次のこともできます。

resultLabel.text = "\(catAge)"
11
lucaslt89

ここに例を使用して問題を解決するためのトレイがあり、問題が解決されることを願っています。

var stringNumber = "1234"
var numberFromString = stringNumber.toInt()
println(numberFromString)

注意toInt():

If the string represents an integer that fits into an Int, returns the  corresponding integer.
2
Akash Raghani