【发布时间】:2024-01-29 02:25:02
【问题描述】:
在使用 big.Int 时,我似乎无法使用 大于或等于) 运算符。
有没有办法比较两个 big.Ints?
我的代码是这样的:
for i := big.NewInt(2); i <= sqrt; i.Add(i, big.NewInt(1)) {...
'i' 和 'sqrt' 是我想要比较的。
感谢您的帮助
【问题讨论】:
在使用 big.Int 时,我似乎无法使用 大于或等于) 运算符。
有没有办法比较两个 big.Ints?
我的代码是这样的:
for i := big.NewInt(2); i <= sqrt; i.Add(i, big.NewInt(1)) {...
'i' 和 'sqrt' 是我想要比较的。
感谢您的帮助
【问题讨论】:
使用大的Cmp方法(https://golang.org/pkg/math/big/#Int.Cmp) 如果小于,则 Cmp 返回 -1。如果相等则为 0,如果大于则为 1。
package main
import (
"fmt"
"math/big"
)
func main() {
for i := big.NewInt(2); i.Cmp(big.NewInt(10)) < 1; i.Add(i, big.NewInt(1)) {
fmt.Println(i)
}
}
【讨论】:
<=?如,小于或等于?