为什么不能解析将 float 字符串转换为 int?

3 julia

当我尝试以这种方式使用 parse: 时parse(Int64, "3.1459"),我收到一个错误,因为 '.' 是一个无效的 10 位基数。我知道错误是由于句点而引发的,但是 Julia 无法将浮点字符串转换为这样的整数有什么特别的原因吗?还有其他方法吗?

Kri*_*son 5

嗯,它不是一个整数,所以它应该返回什么并不是很清楚。您可以将其解析为浮点数,然后根据需要将其四舍五入,例如:


julia> v = parse(Float64, "3.1459")
3.1459

julia> trunc(Int, v)
3

julia> ceil(Int, v)
4

julia> round(Int, v)
3
Run Code Online (Sandbox Code Playgroud)