使用未解析的运算符<=

我试图使用Swift 3 for循环,但我没有成功。 这是我有的:

for assumedPayRate: Double in (0.25..<=billRate) where assumedPayRate += 0.25 { 

..<=它给我错误:

使用未解析的运算符’.. <='

这是最初的Swift 2版本:

 for var assumedPayRate:Double = 0.25; assumedPayRate <= billRate; assumedPayRate += 0.25 { 

我该如何解决这个错误?

Swift中不存在operator ..<= ,语法无效。 改用stride

 // Assuming billRate is a Double for assumedPayRate in stride(from: 0.25, through: billRate, by: 0.25) { // Do your things } 

Swift有两个范围运算符 – .....<

...运算符对应于

 for i = start ; i <= end ; i++ 

while ..<对应

 for i = start ; i < end ; i++ 

在伪代码中。

您可以使用...运算符为¼步(即0.25 ):

 for r in 1 ..< 4*billRate { let assumedPayRate = r / 4.0 ... } 

没有.. <=,您需要将语句转换为while

 var assumedPayRate = 0.25 while assumedPayRate <= billRate { ... // processing assumedPayRate += 0.25 } 

您可以使用advanced operator来完成工作,但您需要自己编写。 官方文档可能有所帮助。