创造一个数学类java_java笔记14-数学相关类

math类

类所在的包

java.lang 不需要导包

类的关系

继承object

类对象的创建

所有属性和方法都是静态 不需要创建对象

类的属性和方法

属性: PI---圆周率    E---E数

方法:

int=Math.abs(int)  绝对值 数字型的基本数据类型都支持long int float double

int=Math.max(int a,int b)   返回最大值  如果传入数据类型不一致 返回值自动提升到范围较大的数据类型

int=Math.min()   返回最小值  数字型的基本数据类型都支持long int float double

double=Math.ceil()   ceil()向上取整,即大于这个数的最小的那个整数;

double=Math.floor()  向下取整,即小于这个数的最大的那个整数;

double=Math.rint()  返回最接近该值的那个整数。注意如果存在两个这样的整数,则返回其中的偶数

int=Math.round()  返回四舍五入的int类型 (0.5的数取数轴右边的整数,这样比较好理解)  round(-1.5) //-1

double=Math.pow(double a ,double b)  a的b次方返回double类型

double=Math.sqrt(double a )  开根号

double=Math.random()    取[0,1)的随机数

这个方法不能满足一些变态的需求 比如取5-10之间的随机数 double=Math.random()*5+5  5+0.999999999*5=10.9999999995 会有精度的损失

Random类

类所在的包

java.util   需要导包  import java.util.Random;

类的关系

继承object

类对象的创建

Random r=new Random();

Random r=new Random(long seed); -->种子数一样生成的随机数是一样的

类的属性和方法

int=r.nextInt();  随机生成一个int类型的数;默认范围是int取值范围,有写范围的方法重载int=r.nextInt(10);   0-9的整数

long=r.nextLong();

float=r.nextFloat(); 随机生成一个0-1的小数

double=r.nextDouble(); 随机生成一个0-1的小数

boolean=r.nextBoolean();  随机生成一个boolean值

void=r.nextBytes[byte[] bytes]  随机生成一个byte放入到byte数组中

BigInteger类

用于超大数字的计算

类所在的包

java.math   需要导包  import java.util.BigInteger;

类的关系

继承Number

类对象的创建构造方法都是带参数的通常用Sring类型参数

BigInteger big1=new BigInteger("123232132131232132132312321323");

BigInteger big2=new BigInteger("123232132131232132132312321323");

类的方法

BigInteger=big1.abs() 返回大整数的绝对值

BigInteger=big1.add(big2) 返回两个大整数的和

BigInteger=big1.divide(big2) 返回两个大整数的商

BigInteger=big1.subtract(big2) 返回两个大整数的差

BigInteger=big1.and(BigInteger val) 返回两个大整数的按位与的结果

BigInteger=big1.andNot(BigInteger val) 返回两个大整数与非的结果

BigInteger=big1.max(BigInteger val) 返回两个大整数的最大者

BigInteger=big1.min(BigInteger val) 返回两个大整数的最小者

BigInteger=big1.mod(BigInteger val) 用当前大整数对val求模

BigInteger=big1.multiply(BigInteger val) 返回两个大整数的积

BigInteger=big1.negate() 返回当前大整数的相反数

BigInteger=big1.pow(int) 返回当前大整数的次方

BigInteger=big1.remainder(big2) 返回当前大整数除以val的余数

BigInteger类

比double更精确的数

类所在的包

java.math   需要导包  import java.util.BigDecimal;

类的关系

继承Number

类对象的创建构造方法都是带参数的通常用Sring类型参数

BigInteger big1=new BigInteger("12323213213.1232132132312321323");

BigInteger big2=new BigInteger("1232321321.31232132132312321323");

类的方法

BigInteger=big1.add(big2) 返回两个大整数的和

BigInteger=big1.divide(big2) 返回两个大整数的商

BigInteger=big1.subtract(big2) 返回两个大整数的差

BigInteger=big1.multiply(BigInteger val) 返回两个大整数的积

big1=big1.setScale(3,3);  --->处理小数点位数用setScale 第一个参数保留几位 第二个参数保留的方式 向上取整向下取整 四舍五入等

DecimalFormat类

专业的格式化类

类所在的包

java.text

类的关系

继承NumberFormat

类对象的创建

0如果给定数字的位数不够用0填补、整数多了不处理、小数多了四舍五入

#如果给定数字的位数不够不处理、整数多了不处理、小数多了四舍五入

DecimalFormat decimal =new DecimalFormat("0");  //显示所有整数

DecimalFormat decimal =new DecimalFormat("#"); //显示所有整数

DecimalFormat decimal =new DecimalFormat("000.000");   12.34 --> 012.340

DecimalFormat decimal =new DecimalFormat("000.###");   1234.3333 --->  1234.333

DecimalFormat decimal =new DecimalFormat("000.###%"); //百分比展示  0.3432 ---->  034.32%

DecimalFormat decimal =new DecimalFormat(",###"); //以逗号隔开  123456789 --->   123,456,789

类的方法

String value =decimal.format(1222.3335);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值