float

浮点数内置类型。

描述

float 内置类型是 64 位双精度浮点数,相当于 C++ 中的 double。这个类型有 14 个可靠的十进制小数位精度。可以把 float 类型存储在引擎所使用的通用类型 Variant 中。float 的最大值约为 1.79769e308,最小值约为 -1.79769e308

不过引擎中的大多数方法和属性使用的都是 32 位单精度浮点数,相当于 C++ 中的 float,有 6 位可靠的十进制小数位精度。Godot 在 Vector2Vector3 等数据结构中使用 32 位浮点数。

使用 float 类型进行的数学运算无法保证精确或确定,经常会产生较小的误差。你通常应该使用 @GDScript.is_equal_approx@GDScript.is_zero_approx 方法来比较两个 float 的值是否相等,不应该用 ==

教程

方法

float

float ( bool from )

float

float ( int from )

float

float ( String from )

方法说明

bool 值转换为浮点值,float(true) 将等于 1.0,float(false) 将等于 0.0。


int 值转换为浮点值,float(1) 将等于 1.0。


String 值转换为浮点值。这个方法的参数接受类似 "1.23" 的浮点数字符串,以及指数符号字符串,所以调用 float("1e3") 将返回 1000.0,调用 float("1e-3") 将返回 0.001。使用无效的浮点数字符串调用这个方法将返回 0。该方法会在第一个无效字符处停止解析并返回到目前为止的解析结果,因此调用 float("1a3") 将返回1,而调用 float("1e3a2") 将返回 1000.0。