【问题标题】:Error - Cannot assign to value: function call returns immutable value错误 - 无法赋值:函数调用返回不可变值
【发布时间】:2016-11-25 14:02:02
【问题描述】:

我正在上一门介绍性的 iOS 开发人员课程,并且正在做一个猫年计算器作为练习。以下代码返回错误: Int(AgeInCatYears.text!) = CatsROld!

错误 - 无法赋值:函数调用返回不可变值

如果它很重要,var CatsROld 在前一行被设置为等于Int(humanYears.text!)! * 7

有什么建议吗?

【问题讨论】:

    标签: swift3 data-conversion


    【解决方案1】:

    如果您将值设置为LabeltextField,则只需将值(as String) 设置为其属性text,但您尝试将值转换为Int,然后分配CatsROld 的值,这就是您收到此错误的原因。所以简单写成AgeInCatYears.text = "\(CatsROld!)"

    AgeInCatYears.text = "\(CatsROld!)"
    

    注意:您正在用! 强制包装CatsROld 值,如果您100% 确定它不会nil,那么它可以,否则您需要使用if letguard 用于可选包装。

    【讨论】:

    • 谢谢!这解决了我的问题!
    • @EnochWiley 欢迎朋友 :)
    • 我想我刚刚做到了。很抱歉没有早点这样做!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-23
    • 2011-06-19
    • 2020-04-10
    • 2012-06-16
    相关资源
    最近更新 更多