ios - 为什么 xcode 为我的 Swift 代码显示 "Expression was too complex to be solved in reasonable time..."?

标签 ios swift

我正在编写一个应用程序,我有一段代码如下所示:

let DestViewController: ftrViewController = segue.destinationViewController as! ftrViewController

let weightInt: Int? = Int(weightInKilos.text!)
let dehydrationInt: Int? = Int(percentOfDehydration.text!)
let lossesInt: Int? = Int(ongoingLosses.text!)
let factorFloat: Float? = Float(Factor.text!)

let lrs24Int = (30 * weightInt! + 70) * factorFloat! + weightInt! * dehydrationInt! * 10 + lossesInt! 

但是,Xcode 表示 Expression 太复杂,无法在合理的时间内解决;考虑将表达式分解为不同的子表达式

我的方程式看起来很正确,我不认为我的方程式太复杂,因为当问题只是我没有正确声明整数(处理 ?s 和!s).

有没有人在我的代码中看到导致此错误的问题,或者表达式真的太难了,计算机无法在合理的时间内解决?谢谢!

PS- 我认为问题可能是 float ,因为在我添加 float 之前,它工作正常。

最佳答案

Rewritten Code

let weightInt: Float? = Float(weightInKilos.text!)
let dehydrationInt: Float? = Float(percentOfDehydration.text!)
let lossesInt: Float? = Float(ongoingLosses.text!)
let factorFloat: Float? = Float(Factor.text!)

let step1 = (30 * weightInt! + 70) * factorFloat! + weigh
let lrs24Int = step1 * dehydrationInt! * 10 + lossesInt!

这不仅仅是 float 问题。我使用 float 来避免类型转换,因为它们都是 float。主要问题是表达的复杂性。

关于ios - 为什么 xcode 为我的 Swift 代码显示 "Expression was too complex to be solved in reasonable time..."?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35519094/

相关文章:

iphone - 当我在不同类别中有多个同名节点时,如何使用 NSXMLParser 读取 XML?

swift - "UICollectionView must be initialized with a non-nil layout parameter"但布局不为零

ios - 如何调整自定义tableView Cell中的标签高度和宽度

iphone - 如何创建发光字体?

ios - 修复github项目SwiftChart中的错误

objective-c - 如何在 Objective-C 代码中重用 Swift 类型别名

ios - 使用 collectionView(_ :layout:sizeForItemAt:) without calling reloadData()) 调整 UICollectionView 单元格的大小

ios - 设置内容插入使 UItableView 滚动一点

objective-c - 在加载 View 之前显示加载指示器

IOS谷歌地图聚类(分组)大量标记