为什么不ceil()
和 floor()
返回一个整数?我怎样才能返回一个整数?
a = 10
b = 3
typeof(a/b)
## Float64
c = ceil(a/b)
typeof(c)
## Float64
在计算范围的背景下,这个问题困扰着我,例如k = 0:1:c
## 0.0:1.0:4.0
typeof(k)
## StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}}
完全披露:我想我有一个答案,所以我将回答我自己的问题,但是如果您有更好的答案,请发布答案。希望下次有人查看时,他们会在这里轻松找到答案。
最佳答案
有时你想要 ceil()
和 floor()
返回整数以外的其他内容,例如Inf
, NaN
.但是,您可以像这样返回一个整数:
julia> c = ceil(Int64, a/b)
julia> typeof(c)
Int64
julia> k = 0:1:c
0:1:4
julia> typeof(k)
StepRange{Int64, Int64}
见 docs
关于types - Julia : ceil/floor 可以返回一个整数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67068113/