关于一篇JAVA高精度基础用法的文章: 链接
下面是我自己记下的一下比较重要的
import java.util.*;
import java.math.*;
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
while(in.hasNext()) {//多组输入
int n;
n=in.nextInt();//输入
BigDecimal f;
f=in.nextBigDecimal();
int c=0,d = 0;
BigInteger a=new BigInteger("123");
BigInteger b=BigInteger.valueOf(2);//将参数转化为BigInteger
String s="12345";
BigInteger e=new BigInteger(s);
BigInteger arr[]=new BigInteger[10005];//数组
a=BigInteger.ONE;//基本常量
a=BigInteger.TWO;
a=BigInteger.ZERO;
a=BigInteger.TEN;
BigDecimal ans=new BigDecimal(1);//大浮点数,用法和大整数类似,不再重复
BigDecimal ans=BigDecimal.valueOf(1);
//大浮点数去掉尾随零的方法
ans=ans.stripTrailingZeros();//去掉多余的尾随零
String s=ans.toPlainString();//将其转化为字符串,防止出现科学计数法形式
if(s.startsWith("0")) {//去掉前导零
s=s.substring(1);
}
a.add(b);//加
a.subtract(b);//减
a.multiply(b);//乘
a.divide(b);//除
a.remainder(b);//取余
a.mod(b);//同上,取余
a.pow(n);//计算a^n 参数必须为整数
a.abs();//取绝对值
a.gcd(b);//求最大公约数,最小公倍数也就可以求出来了
BigInteger maxn=max(a,b);//要使用max 或者min是要定义方法。定义方法,如下
int minn=min(c,d);
//compareTo() BigInteger 等不能直接用比较运算符比较大小,要用compareTo方法
if(a.compareTo(b)>0) {
}
System.out.println("case"+1+":");
System.out.println("");//打印空行
for(int i=1;i<=100;i++) {
arr[i]=arr[i-1].multiply(BigInteger.valueOf(i));
}
}
}
private static int min(int c, int d) {
// TODO Auto-generated method stub
return 0;
}
private static BigInteger max(BigInteger a, BigInteger b) {
// TODO Auto-generated method stub
return null;
}
}
用的比较多的
1、JAVA多组输入实现
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
while(in.hasNext()) {//多组输入
}
}
}
2、
BigInteger 大整数类
BigDecimal 大浮点数类
3、String类