【发布时间】:2016-11-25 14:02:02
【问题描述】:
我正在上一门介绍性的 iOS 开发人员课程,并且正在做一个猫年计算器作为练习。以下代码返回错误:
Int(AgeInCatYears.text!) = CatsROld!
错误 - 无法赋值:函数调用返回不可变值
如果它很重要,var CatsROld 在前一行被设置为等于Int(humanYears.text!)! * 7。
有什么建议吗?
【问题讨论】:
我正在上一门介绍性的 iOS 开发人员课程,并且正在做一个猫年计算器作为练习。以下代码返回错误:
Int(AgeInCatYears.text!) = CatsROld!
错误 - 无法赋值:函数调用返回不可变值
如果它很重要,var CatsROld 在前一行被设置为等于Int(humanYears.text!)! * 7。
有什么建议吗?
【问题讨论】:
如果您将值设置为Label 或textField,则只需将值(as String) 设置为其属性text,但您尝试将值转换为Int,然后分配CatsROld 的值,这就是您收到此错误的原因。所以简单写成AgeInCatYears.text = "\(CatsROld!)"
AgeInCatYears.text = "\(CatsROld!)"
注意:您正在用! 强制包装CatsROld 值,如果您100% 确定它不会nil,那么它可以,否则您需要使用if let或guard 用于可选包装。
【讨论】: