CGFloat 变量返回 0.0

Gla*_*sen 1 cgfloat swift

当我尝试这个时:

let progress: CGFloat = CGFloat(2 / 3)
print(progress)
Run Code Online (Sandbox Code Playgroud)

控制台返回 0 但结果是 0,66666666667,而不是 0.... 为什么会这样?

当我尝试:

let progress: CGFloat = CGFloat(10 / 3) 
print(progress)
Run Code Online (Sandbox Code Playgroud)

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

Tam*_*gel 5

如果您不进行转换,这将非常有效。

let progress: CGFloat = 2 / 3
print(progress) //0.666666666666667
Run Code Online (Sandbox Code Playgroud)

这不适用于显式转换的原因是因为Swift 将整数视为Int没有上下文的整数。

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