为什么无法将float字符串解析为int?

问题描述 投票:0回答:1

[当我尝试以这种方式使用解析:parse(Int64, "3.1459")时,出现错误,因为'。是无效的10进制数字。我知道错误是由于句号而引起的,但是茱莉亚为什么不能将浮点字符串转换成这样的整数,有什么特殊的原因吗?还有其他方法吗?

julia
1个回答
0
投票

我不确定由于句号而引起的错误-而是因为您可以在不指定四舍五入的情况下将十进制解析为整数:


julia> parse(Float64, "3.14159")
3.14159

julia> Int(round(parse(Float64, "3.14159")))
3

0
投票

嗯,它不是整数,因此不清楚应该返回什么。您可以将其解析为浮点数,然后根据需要将其取整,例如:


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

julia> trunc(Int, v)
3

julia> ceil(Int, v)
4
热门问题
推荐问题
最新问题