我正在尝试用Java实现RSA攻击,我需要计算像floor和ceil这样的数学运算到BigInteger变量。我们知道math.ceil和math.floor只适用于双变量,你知道其他任何我可以为BigIntegers计算floor和ceil的方法吗?谢谢。
答案 0 :(得分:2)
这个问题没有意义:floor和ceil将浮点数舍入为整数。猜猜看:BigInteger只能代表整数。所以不需要四舍五入。 (尤其是RSA上下文强调整数字符)。
答案 1 :(得分:2)
由于BigInteger值是整数,我假设您需要除法运算的上限和下限。为此,我建议你改用BigDecimal。它有一个方法divide
,它接受另一个BigDecimal和一个MathContext。在MathContext中,您可以将舍入模式指定为上限或下限(等等)。
如果你需要的只是向零舍入,你也可以使用BigDecimal.divideToIntegralValue
。