Math:类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
* 父类:Object
* 静态类,所有的属性和方法使用类名调用
* JDK1.0
* 常用方法
* 求2个数的最大值
* 求2个数的最小值
* 随机数
* 向上取整
* 向下取整
* 四舍五入
* 求次幂
* 平方根
* 绝对值
public class Demo {
public static void main(String[] args) {
//1:获取圆周率
//System.out.println(Math.PI);
//2:求绝对值
/*int a = -10;
int b = 20;
//System.out.println(Math.abs(a));
System.out.println(Math.max(a, b));
System.out.println(Math.min(a, b));*/
//3:向上取整 天花板函数 取最接近该小数的最大整数
double a = 10.9;
System.out.println(Math.ceil(a));
//4:向下取整 地板函数 取最接近该小数的最小整数
System.out.println(Math.floor(a));
//5:返回第一个参数的第二个参数次幂的值。 Infinity 正无穷 -Infinity负无穷
System.out.println(Math.pow(2,64));
//6:返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。
System.out.println((int)(Math.random()*8)+3);
//7:四舍五入取整
System.out.println(Math.round(10.189));
//保留2位小数
double d = Double.parseDouble(String.format("%.2f", 10.189));
System.out.println(d);
//8 返回正确舍入的 double 值的正平方根。 NaN not a number
System.out.println(Math.sqrt(10));
}
}
import java.math.BigInteger;
public class Demo {
/*
* 如何得到比long类型还大的值
* BigInteger:大整型
* 不可变的任意精度的整数。
*
*/
public static void main(String[] args) {
//long max = Long.MAX_VALUE;
/*System.out.println(max);
System.out.println(max+1);*/
// 将 BigInteger 的十进制字符串表示形式转换为 BigInteger。
BigInteger bg = new BigInteger("9223372036854775807");
bg = bg.add(new BigInteger("132416546546541984984198489498498498494984984984984984984"));
System.out.println(bg);
}
}
import java.math.BigDecimal;
public class Demo {
/*
* 获取比double最大值还要大的数字
* BigDecimal:大浮点型
*/
public static void main(String[] args) {
/*double max = Double.MAX_VALUE;
System.out.println(max);
System.out.println(max+max);*/
BigDecimal bd = new BigDecimal("1.7976931348623157E308");
bd = bd.add(new BigDecimal("1.7976931348623157E308"));
System.out.println(bd);
}
}