浮点类型
下表列出来 Julia 支持的浮点类型:
类型 精度 比特数
Float16 半精度 16
Float32 单精度 32
Float64 双精度 64
此外,对复数和有理数的完整支持是在这些原始数据类型之上建立起来的。
浮点数字面量格式表示如下,必要时可使用 E 来表示。
实例
julia> 1.0
1.0
julia> 1.
1.0
julia> 0.5
0.5
julia> .5
0.5
julia> -1.23
-1.23
julia> 1e10
1.0e10
julia> 2.5e-4
0.00025
注:
在科学计数法中,为了使公式简便,可以用带 E 的格式表示。例如 1.03乘10的8次方,可简写为 "1.03E+08" 的形式,其中 "E" 是 exponent(指数) 的缩写。
也存在十六进制的浮点数字面量,但只适用于 Float64 类型的值。一般使用 p 前缀及以 2 为底的指数来表示:
实例
julia> 0x1p0
1.0
julia> 0x1.8p3
12.0
julia> x = 0x.4p-1
0.125
julia> typeof(x)
Float64
Julia 也支持半精度浮点数(Float16),但它们是使用 Float32 进行软件模拟实现的。
julia> sizeof(Float16(4.))
2
julia> 2*Float16(4.)
Float16(8.0)
下划线 _ 可用作数字分隔符:
实例
julia> 10_000, 0.000_000_005, 0xdead_beef, 0b1011_0010
(10000, 5.0e-9, 0xdeadbeef, 0xb2)