Java之BigInteger的用法
目录
- Java之BigInteger用法
- 一、常用方法
- 二、进制转换
Java之BigInteger用法
BigInteger在Java中用于操作大整数,当一个数超过了Long表示的最大范围时就可以考虑使用BigInteger来操作。
BigInteger的使用方法很多,也可以用于进制转换的一些操作,本文记录了一些BigInteger的常用方法。
一、常用方法
方法名 | 作用 |
---|---|
add(); | 相加 |
subtract(); | 相减 |
multipy(); | 相乘 |
divide(); | 相除 |
remainder(); | 取余 |
pow(); | n次方 |
abs(); | 绝对值 |
negate(); | 相反数 |
gcd(); | 最大公约数 |
mod(); | 相当于remainder |
min(); | 两者中的最小值 |
max(); | 两者中的最大值 |
and(); | 按位与 |
andNot(); | 按位与非 |
not(); | 当前大数的非 |
or(); | 按位或 |
xor(); | 按位异或 |
shiftLeft(); | 当前大数左移n位 |
shiftRight(); | 当前大数右移n位 |
bitLength(); | 当前大数的二进制位数 |
compareTo(); | 大数比较大小 |
BigInteger number1 = new BigInteger("4324234132412");BigInteger number2 = new BigInteger("54323423423432");BigInteger result;number1 = number1.add(number2);number2 = number2.subtract(number1);number2 = number1.multiply(number2);number2 = number1.divide(number2);number2 = number2.remainder(number1);number2 = number2.pow(10);number2 = number2.remainder(number1);number2 = number2.gcd(number1);result = number2.min(number1);result = number2.and(number1);result = number2.or(number1);result = number2.andNot(number1);result = number2.not();result = number2.xor(number1);result = number2.shiftLeft(10);result = number2.shiftRight(6);BigInteger number3 = new BigInteger("10");System.out.println(number3.bitLength());System.out.println(number2);if (number1.compareTo(number2) > 0) {System.out.println("a > b");} else if (number1.compareTo(number2) < 0) {System.out.println("a < b");} else {System.out.println("a = b");}
二、进制转换
利用BigInteger的构造函数可以实现任意进制的转换。
// 十进制转二进制String str1 = new BigInteger("100", 10).toString(2);System.out.println(str1);// 二进制转十进制String str2 = new BigInteger("1010101010111", 2).toString(10);System.out.println(str2);// 十六进制转八进制String str3 = new BigInteger("7E6A", 16).toString(8);System.out.println(str3);
Java之BigInteger的用法相关推荐
- BigInteger的用法
最近在做题的过程中经常遇到大数的阶乘求和,所以想总结一下java中BigInteger的用法 一.BigInteger是什么? BigInteger是java中的一种包装类,主要用于处理任意精度的整数 ...
- java 中negate()_Java BigInteger negate()用法及代码示例
先决条件:BigInteger基础 的java.math.BigInteger.negate()方法返回一个BigInteger,其值为(-this). negate()方法将更改BigInteger ...
- java中multiply用法_Java BigInteger multiply()用法及代码示例
java.math.BigInteger.multiply(BigInteger val)用于计算两个BigInteger的乘法.由于BigInteger类内部使用整数数组进行处理,因此对BigInt ...
- java中BigInteger用法的详解
在java中经常会遇到比较大的数,甚至超过了long型,那么该如何处理这些"大数据"呢?在java中有两个类BigInteger和BigDecimal分别表示大整数类和大浮点数类, ...
- java leftshift,Java BigInteger shiftLeft()用法及代码示例
java.math.BigInteger.shiftLeft(int n)方法返回一个BigInteger,其值为(this 用法: public BigInteger shiftLeft(int n ...
- java中的基本用法
java中的基本用法 关键字:专门用途的字符串 所有java关键字都是小写英文 标识符 java常量 java变量 ■ 作用域:起作用的区域■ 使用前必须先声明,在赋值.使用变量名访问这块区域 jav ...
- Java中getResourceAsStream的用法
Java中getResourceAsStream的用法 首先,Java中的getResourceAsStream有以下几种: 1. Class.getResourceAsStream(String p ...
- Java API —— BigInteger类
1.BigInteger类概述 可以让超过Integer范围内的数据进行运算 2.构造方法 public BigInteger(String val) 3.BigInteger类 ...
- Java中getResourceAsStream的用法小结
2019独角兽企业重金招聘Python工程师标准>>> Java中getResourceAsStream的用法小结 一.Java中的getResourceAsStream主要有以下三 ...
最新文章
- 差错控制:海明码、循环冗余校验码
- 读取Excel表格数据到DataGridView中
- mysql 批量删除数据
- 解决vscode在apt update时哈希冲突问题
- 数据结构之二叉搜索树
- Zabbix(六) zabbix主动模式监控
- Confluence介绍与使用
- 《Android进阶之光》— Android 书籍
- 网站SEO优化--Flash站优化方法
- JVM 新生代,老年代,永久代
- 密码字典生成工具:crunch
- 仿淘宝收货地址之三级联动
- 查税号,税号查询,纳税人识别号查询 - 企查查
- 第06章 软件架构设计 之 软件架构风格
- 西游记中最顶尖的妖怪
- 【CodingNoBorder - 07】无际软工队 - 求职岛:ALPHA 阶段测试报告
- 从零开始写 win32 打印机任务管理的 node 模块 (2)node-addon-api
- 手游测试员需要做什么?
- 视觉特效,图片转成漫画功能
- 用计算机发传真,怎么使用win7电脑发传真|使用win7电脑发传真的详细步骤
热门文章
- 来自csdn第一博主:成功的背后(给所有IT人)
- ubuntu环境安装
- 计算机的典型应用及事例,计算机网络典型应用案例精选
- Modbus协议完整版
- RacerX Effective, Static Detection of Race Conditions and Deadlocks调研笔记
- 计算机课题推荐人意见,课题推荐人意见1.doc
- 360在线网站安全检测,web安全测试AppScan扫描工具,XSS常用的攻击手法
- Python 绿盟远程安全评估系统(RSAS)漏洞跟踪表导出工具
- 桌游“德国心脏病”的python代码实现
- oracle11g 服务端+客户端