java biginteger 取模_Java BigInteger类
其实除了Python,Ruby外,Java也自带高精,只不过被封装在类里.Java有两个高精类:BigInteger和BigDecimal,分别是高精度整数和高精度小数.本文来简单介绍一下BigInteger类.
构造
BigInteger类只能从String构造.如,
BigInteger a = new BigInteger("233") ;
如果要用Scanner读入一个BigInteger,可以这么写:
Scanner scan = new Scanner(System.in) ;
BigInteger a = new BigInteger(scan.next()) ;
函数
因为Java不支持重载运算符,所以所有的运算都由函数来实现.
BigInteger add(BigInteger val) //求和
BigInteger subtract(BigInteger val) //相减
BigInteger multiply(BigInteger val) //求积
BigInteger divide(BigInteger val) //求商
BigInteger mod(BigInteger val) //取模
BigInteger remainder(BigInteger val) //求余
BigInteger pow(int exponent) //求幂
BigInteger abs() //绝对值
BigInteger gcd(BigInteger val) //求gcd
BigInteger max(BigInteger val) //求较大值
BigInteger min(BigInteger val) //求较小值
BigInteger negate() //相反数
BigInteger leftShift(int n) //左移
BigInteger rightShift(int n) //右移
BigInteger and(BigInteger val) //求与
BigInteger andNot(BigInteger val) //求与+取反(与非)
BigInteger or(BigInteger val) //求或
BigInteger xor(BigInteger val) //求异或
BigInteger not() //取反
int intValue() //转int
long longValue() //转long
double doubleValue() //转double
float floatValue() /转float
byte[] toByteArray(BigInteger val) //转byte数组(底层实现是由byte数组的反码构成的)
String toString() //转字符串
最后说一句,BigInteger在java.math库中.
Code
import java.util.* ;
import java.io.* ;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in) ;
BigInteger a = new BigInteger(scan.next()), b = new BigInteger(scan.next()) ;
System.out.println(a.add(b)) ;
System.out.println(a.subtract(b)) ;
System.out.println(a.multiply(b)) ;
System.out.println(a.divide(b)) ;
System.out.println(a.mod(b)) ;
}
}
java biginteger 取模_Java BigInteger类相关推荐
- java long 取模_Java 数组取模分组
/** * jdk8以上支持 Long类型数组取模分组 * @param arrays 被分组的数组对象 * @param mod 取模值 * @return Map> * 说明:Map> ...
- java中的取模_Java 中的取模和取余
期末复习密码学时需要用到取模运算,发现 Java 中的 % 运算符并不是取模运算(Modulo Operation),而是取余运算(Complementation). 计算方法 对于整数 a,b 来说 ...
- java取模_Java 中的取模和取余
期末复习密码学时需要用到取模运算,发现 Java 中的 % 运算符并不是取模运算(Modulo Operation),而是取余运算(Complementation). 计算方法 对于整数 \(a\), ...
- java hash取模,一致性hash算法及其java实现
目录 背景 随着业务系统越来越大,我们需要对API的访问进行更多的缓存,使用Redis是一个很好的解决方案. 但是单台Redis性能不足够且迟早要走向集群的,那么怎么才能良好的利用Redis集群来进行 ...
- biginteger判断相等_java biginteger怎么比较大小
展开全部 compareTo方法来比较,小e68a84e8a2ad62616964757a686964616f31333365643662于则返回-1,等于则返回0,大于则返回1 BigInteger ...
- java 除 取模_除法运算和取模
package review20140420; /* * 除法和取模(整数除以整数,会出现除数不能为零的异常) */ public class Test2 { //程序的入口 public stati ...
- java除数取余_Java中的相除(/)和取余(%)的实现方法|chu
取模运算与取余运算两个概念有重叠的部分但又不完全一致.主要的区别在于对负整数进行除法运算时操作不同. 对于整形数a,b来说,取模运算或者求余运算的方法都是: 1.求 整数商 c = a / b: 2. ...
- java hash 取模_HashMap 中的取模和扩容公式推导
为什么 HashMap 容量 capacity 大小是 2 的 n 次幂? 为什么使用 e.hash & (capacity - 1) 位运算作取模公式? 为什么扩容时使用 e.hash &a ...
- mysql取余 和 取模_java 取模运算% 实则取余 简述 例子 应用在数据库分库分表
java 取模运算% 实则取余 简述 例子 应用在数据库分库分表 求模运算与求余运算不同."模"是"Mod"的音译,模运算多应用于程序编写中. Mod的含义为 ...
最新文章
- SPIEC-EASI的微生物网络构建示例
- python 图像相似 phash和compare_ssim比较
- Java面向对象之USB接口实例
- 对CPU的IO操作的理解
- 深入了解 Java 之虚拟机内存
- formal method satisfiable check
- 彻底弄懂dalvik字节码【一】
- [react] 除了实例的属性可以获取Context外哪些地方还能直接获取Context呢?
- 梅特勒托利多xk3124电子秤说明书_托利多电子秤使用说明
- C++基础知识:C++语言中的表达式求值
- opencv图像分析与处理(14)- 图像压缩基础知识
- 【并查集】并查集专题总结
- GNOME Screencaster 将支持 Miracast P2P 传输
- java 长整型long_C语言和java 长整型为何打印不同?
- 批处理、分时、实时、网络、分布式操作系统的区别
- 什么是商业智能(BI),就看这篇文章足够了
- 视频动作识别(Action Recognition)综述
- 网站打不开如何解决?教你4个方法搞定它!
- Java-ForkJoinPool详解
- RIP路由防止环路的方法