当我尝试这个时:
let progress: CGFloat = CGFloat(2 / 3)
print(progress)
控制台返回0但结果是0,66666666667,而不是0 ....为什么会发生这种情况?
当我尝试:
let progress: CGFloat = CGFloat(10 / 3)
print(progress)
它返回3.0,这是CGFloat如何工作的方式?有没有办法用CGFLoat获取逗号?
答案 0 :(得分:4)
如果你省略转换,这将完美无缺。
let progress: CGFloat = 2 / 3
print(progress) //0.666666666666667
这不能用于显式转换的原因是因为如果没有上下文,Swift会将整数视为Int
。
这正是转换括号内发生的事情。