Java BigInteger,切断最后一位数字

标签 java performance optimization biginteger

相当简单,如果 BigInteger 数字是 543,我希望它截掉最后一位数字,使其成为 54。

两个简单的方法可以做到这一点:

  1. 使用字符串,获取子字符串并使用新值创建新的双整数。
  2. 对数字 10 使用 BigIntegers 除法。 ( 543/10 = 54.3 => 54 )

当然,我会用大整数执行此很多次。

我的猜测是,玩弄字符串会更慢,但话又说回来,我没有那么多地使用 Bigintegers,也不知道“除法”操作的开销有多大。

速度在这里很重要,实现它的最快方法是什么(内存没有问题只是速度)?

也欢迎其他解决方案。

最佳答案

除以 10 很可能会更快。

关于Java BigInteger,切断最后一位数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1144735/

相关文章:

java - 使用 java.util.concurrent 模糊图像,但是,生成的图像完全是黑色的

java - 带有 Surefire 的 Maven 拒绝运行单一测试方法?

mysql - 标记模式 - 查询单独运行时速度快,在一个 SELECT 中运行时速度慢

java - 超快文件存储引擎

c++ - 如何决定是否使用超线程?

mysql - 大型Mysql连接

python - 一个数字的有序对

java - 在 Java 中使用 Time 与 Camel 框架共存

java - 如何使用经典身份验证将 spring-security-oauth 服务器添加到现有 Web 应用程序?

java - 播放不同类(class)的音频?