我想返回大于或等于整数除法的最小整数值。于是我用了math.ceil
,却得不到我想要的值。
package main
import (
"fmt"
"math"
)
func main() {
var pagesize int = 10
var length int = 43
d := float64(length / pagesize)
page := int(math.Ceil(d))
fmt.Println(page)
// output 4 not 5
}
http://golang.org/pkg/math/#Ceil
http://play.golang.org/p/asHta1HkO_
怎么了? 谢谢。
最佳答案
线
d := float64(length / pagesize)
转换为 float 除法的结果。由于除法本身是整数除法,所以结果为 4,所以 d = 4.0 且 math.Ceil(d)
为 4。
用
替换该行d := float64(length) / float64(pagesize)
您将拥有 d=4.3
和 int(math.Ceil(d))=5
。
关于golang - 像 php 的 ceil 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19890935/