CGFloat变量返回0.0

时间:2017-07-22 14:54:20

标签: swift cgfloat

当我尝试这个时:

let progress: CGFloat = CGFloat(2 / 3)
print(progress)

控制台返回0但结果是0,66666666667,而不是0 ....为什么会发生这种情况?

当我尝试:

let progress: CGFloat = CGFloat(10 / 3) 
print(progress)

它返回3.0,这是CGFloat如何工作的方式?有没有办法用CGFLoat获取逗号?

1 个答案:

答案 0 :(得分:4)

如果你省略转换,这将完美无缺。

let progress: CGFloat = 2 / 3
print(progress) //0.666666666666667

这不能用于显式转换的原因是因为如果没有上下文,Swift会将整数视为Int

这正是转换括号内发生的事情。