Java:数学相关类

Math类

Math类是数学工具类,用于数学计算,构造方法是私有的,方法都是静态的,因此直接类名调用

static int abs(int a)        求参数绝对值

static double ceil(double a)        向上取整

static double floor(double a)        向下取整

static long round (double a )        四舍五入

static int max(int a,int b)        求较大值

static int min(int a,int b)        求较大值

BidInteger 

有时需要处理一些较大的数据,这些数据甚至超出了long的范围,这时我们使用BigInteger类对象处理数据,再转为long或int

构造

BigInteger(String val)        val必须是数字形式的字符串

 方式

BigInteger add(BigInteager val)        加法,返回BigINteger

BigInteger aubtract(BigInteager val)   减法

BigInteger multiply(BigInteager val)         乘法

BigInteger divide(BigInteager val)         除法

将BigInteger转为int,long

int intvalue();

long longvalue(); 

BigDecimal

用float,double运算存在精度损失问题,因此我们用BigDecimal类处理,后转为float与double

构造

BigDeciaml(String val)        传格式为数字形式的字符串

不要构造直接传float或double,会出问题,如果要传浮点数进行初始化可以调用方法

 方法

BigDecimal add(BigDecimal val)        加法,返回BigDecimal

BigDecimal aubtract(BigDecimal val)   减法

BigDecimal multiply(BigDecimal val)         乘法

BigDecimal divide(BigDecimal val)         除法

static BigDecimal valueof(double val)        此方法初始化时可传入double数据,静态方法,类名直接调用

BigDecimal上面的除法除不尽会报错 ,因此我们要有一些处理方法

BigDecimal divide(BidDecimal divisor ,       //被除数

                              int scale,                        //指定保留几位小数

                              int roundingMode          //取舍方式  

)

取舍方式实参,直接BigDecimal类名调用

static int ROUND_UP        向上加一

static int ROUND_DOWN   直接舍去

static int Round_HALF_UP四舍五入

上面的除法方式比较过时,可以传第三个参数时传RoundingMode枚举的属性,而不是BigDecimal的属性

果实方法解决

取舍方式传参,RoundingMode类名调用

UP 向上加一

DOWN直接舍去

HALF_UP四舍五入

你可能感兴趣的:(java,开发语言)