首页 > 代码库 > java大数--总结
java大数--总结
BigInteger(高精度整数)
1、所在包:
java.math.BigInteger
2、大数运算,以下返回类型均为BigInteger
BigInteger a; BigInteger b; a.add(b);//大数相加 a.divide(b);//a整除以b a.mod(b);//a对b取余
3、基本类型转化成大数
BigInteger x = BigInteger.valueOf(n);
4、大数求最大公约数
BigInteger a; BigInteger b; a.gcd(b);//返回类型为BigInteger
5、判断相等
BigInteger a; BigInteger b; a.compareTo(b) == 0//等于0则相等
String
(1)将x当成10进制转化为base进制的用字符串表示的数s
String s = Integer.toString(x, base);
(2)将字符串s所表示的数当成base进制转化为10进制数的int类型的x
int x = Integer.parseInt(s, base);
(3)将base进制的字符串s转化成10进制的大数x。若base与s可能的进制数不一致,会报错。
BigInter x = new BigInteger(s, base);
注意: s是base进制的,举例
String s1 = new String("1A"); BigInteger m1 = new BigInteger(s1, 16);//m1为26 String s2 = new String("11111"); BigInteger m2 = new BigInteger(s2, 2);//m2为31
PS:
1、这种输入可能更快点
import java.io.*; Scanner sc = new Scanner(new BufferedInputStream(System.in));
2、读一整行
String s = sc.nextLine();
java大数--总结
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。