数学相关类
Math类
- 属java.lang包
- Math类的构造方法是私有的,不能直接调用创建对象
- 由于Math中提供的属性及方法都是static,所以不需要创建对象
- 常用方法:
abs(); 绝对值
ceil(); 向上取整 返回double类型
floor(); 向下取整 返回double类型
rint(); 返回最接近参数的整数,如果有2个数同样接近,则返回偶数的那个 返回的也是double类型
round(); 四舍五入 int/long类型
max() min()
pow(a,b); 参数为double类型 返回值是double类型,计算 a 的 b 次方
sqrt() 开根,参数和返回值都是double类型
random() 随机数 0.0 ~ 1.0 double类型 左闭右开
0-9之间的随机整数 int value = (int)(Math.random()*10);
5.0-10.9之间的小数
(Math.random()*6) + 5 可能会丢失数据
Math.random()计算小数的时候,数据可能会有丢失。
随机数建议用Random类
还有什么三角函数方法阿,各种方法,自己查API就可以了
Random类
1.在java.util包下
2.继承了Object
3.两个构造方法,一个无参,一个有参(long seed)
Random r = new Random();
r.nextInt(); 随机产生 int 取值范围的整数,有正负
r.nextInt(int bound); bound必须为正数,随机产生一个[0,bound)的整数
r.nextFloat(); 随机产生一个[0.0,1.0)之间的数
r.nextBoolean(); true/false
UUID类
java.util包下的,这个就不多说了。可以查API了解看看,以后学数据库再看也行
BigInteger类
long存不下的话,可以用这个存,底层是动态数组实现的
java.math包下
继承 Number
有参构造方法创建对象,通常利用带String参数的构造方法创建这个类的对象
BigInteger i = new BigInteger(“123”);
方法,四则运算:
add(); 加
subtract(); 减
multiply(); 乘
divide(); 除
BigDeciaml类
超过了double取值范围。同BigInteger
setScale()方法,两个参数,第一个参数是保留小数点后几位,第二个参数是设置的模式(向下取整,向上取整,四舍五入等)
DecimalFormat类
java.text包下
带String参数的构造方法创建一个格式化对象 0 #
调用format方法小一个小数格式化成一个字符串
例如:“000.###” 其中的 000 表示必须有的,###表示可有可无
对于必须有的,不够则补0,对于可有可无的,多了则进行四舍五入