使用BigInteger实现除法取余

 更新时间:2021年08月13日 14:34:49   作者:昂蒂梵德  
这篇文章主要介绍了使用BigInteger实现除法取余操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

BigInteger 除法取余

1、BigInteger是什么?

Java中,整形的最大范围是64位的long型整数。但是如果我们使用的整数超过了64位呢?这时候就用到了BigInteger。BigInteger内部使用int[]数组来存储足够大的整数。

2、BigInteger实现除法取余

public class BigIntTest {
    public static void main(String[] args) {
        BigInteger bigInteger = new BigInteger("45615146541561");
        BigInteger bigInteger2 = new BigInteger("6541315");
        BigInteger[] resBigIntegers = bigInteger.divideAndRemainder(bigInteger2);
        System.out.println("两数相除,整除结果为:" + resBigIntegers[0]  +
                           ",余数为:" + resBigIntegers[1]);
    }
}

运行结果:

file

BigInteger简单使用及方法总结

BigInteger 可以用来解决数据的溢出问题!

下面我总结几种关于BigInteger的常用用法:

1、probablePrime和nextprobablePrime。(判断质数,并返回)

BigInteger.probablePrime(int x);

返回有可能是素数(质数),具有指定长度的正数BigInteger,返回可能是合数的概率不超过2的负100次方, 

BigInteger.nextprobablePrime(int x)

返回大于此BigInteger的有可能是素数(质数),具有指定长度的正数BigInteger,返回可能是合数的概率不超过2的负100次方

2、valueOf()(对数据初始化)

BigInteger valueOf(long val)

用法如下:

3、四则运算

(add(加)。subtract(减)。multiply(乘)。divide(除))

调用方式如上图,可以重复调用

4、remainder(取余)

返回其值为取余后的BigInteger类型的值,例子如下

调用的时候要保证数据是BigInteger类型的,可以用初始化(valueOf)或者new一个。

5、divideAndRemainder(先除后取余,结果分别存在数组中)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java并发编程之线程安全性

    Java并发编程之线程安全性

    这篇文章主要介绍了Java并发编程之线程安全性,文章基于Java的相关内容详细的展开详细介绍,需要的小伙伴可以参考一下
    2022-04-04
  • Java列表元素自定义排序方式

    Java列表元素自定义排序方式

    文章介绍了在Java开发中如何对列表元素进行自定义排序,通过实现`Comparator`接口并重写`compare`方法来指定自定义排序规则,示例展示了如何对汉字数字进行排序,并通过改变自定义顺序列表的元素添加顺序来实现倒序排序
    2024-12-12
  • Java WebService技术详解

    Java WebService技术详解

    本文详细讲解了Java WebService技术工作原理以及调用方式。对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-12
  • Java生成和解析XML格式文件和字符串的实例代码

    Java生成和解析XML格式文件和字符串的实例代码

    这篇文章主要介绍了Java生成和解析XML格式文件和字符串的实例代码,需要的朋友可以参考下
    2014-02-02
  • Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

    Spring Boot + MyBatis Plus 高效开发实战从入

    本文将详细介绍 Spring Boot + MyBatis Plus 的完整开发流程,并深入剖析分页查询、批量操作、动态 SQL、乐观锁、代码优化等实战技巧,感兴趣的朋友一起看看吧
    2025-04-04
  • Java实现简易版联网坦克对战小游戏(附源码)

    Java实现简易版联网坦克对战小游戏(附源码)

    这篇文章主要给大家介绍了关于Java实现简易版联网坦克对战小游戏的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • SpringAOP中的Advisor详解

    SpringAOP中的Advisor详解

    这篇文章主要介绍了SpringAOP中的Advisor详解,平时我们项目中涉及到 AOP,基本上就是声明式配置一下就行了,无论是基于 XML 的配置还是基于 Java 代码的配置,都是简单配置即可使用,今天就来看一下声明式配置的使用,需要的朋友可以参考下
    2023-08-08
  • Java中ArrayList和LinkedList有什么区别举例详解

    Java中ArrayList和LinkedList有什么区别举例详解

    这篇文章主要介绍了Java中ArrayList和LinkedList区别的相关资料,包括数据结构特性、核心操作性能、内存与GC影响、扩容机制、线程安全与并发方案,以及工程实践场景,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-02-02
  • 从ElasticSearch中删除数据的几种常见方式

    从ElasticSearch中删除数据的几种常见方式

    这篇文章主要给大家介绍了关于从ElasticSearch中删除数据的几种常见方式,在Elasticsearch中删除数据可以通过删除索引或删除文档两种方式实现,需要的朋友可以参考下
    2024-10-10
  • Spring应用中使用acutator/refresh刷新属性不生效的问题分析及解决

    Spring应用中使用acutator/refresh刷新属性不生效的问题分析及解决

    在Spring应用收到/actuator/refresh的POST请求后,标注了@RefreshScope以及@ConfiguratioinProperties的bean会被Spring容器重新加载,但是,在实际应用中,并没有按照预期被Spring容器加载,本文将讨论导致这种未按预期刷新的一种原因,感兴趣的朋友可以参考下
    2024-01-01

最新评论