java bigdecimal 保留两位小数_Java 之方便的工具类库

   丰富的类库也是 Java 语言的一大特点,Java 对常见操作提供了丰富的工具类   本篇文章主要讲解 Java 中几个常用工具类

Object

Object 类是所有类的父类,其中定义了三个常用方法。

获取对象类型    getClass()

Integer a = 34;
System.out.println(a.getClass());  // class java.lang.Integer

获取对象哈希值    hashCode()

String a = "A";
System.out.println(a.hashCode());  // 65

转换为字符串    toString()

Integer a = 134;
String str = a.toString();
System.out.println(str);  // 134

Math

Math 类是数字操作工具类,常用于一些特定的数字操作。

生成随机数    random()

double random = Math.random();
System.out.println(random);  // 0 - 1间随机小数/**
 * 生成随机数时也可以使用 Random 类,
 * 使用 nextInt(int n) 方法生成随机整数,
 * 代码如下:
 */
Random random = new Random();int nextInt = random.nextInt(100);
System.out.println(nextInt);  // 0 - 99间随机整数

其他方法

获取绝对值

abs(int a)

四舍五入

round(double a)

向上取整

ceil(double a)

向下取整

floor(double a)

// 获取绝对值int abs = Math.abs(-12);     // abs = 12// 四舍五入long round = Math.round(12.6);  // round = 13// 向上取整double ceil = Math.ceil(5.2);  // ceil = 6.0// 向下取整double floor = Math.floor(8.9); // floor = 8.0

大数字处理

BigInteger 类及 BigDecimal 类用于处理大数字,BigInteger 类处理大整数,BigDecimal 类处理大浮点数。

1、BigInteger

加法操作

add(BigInteger val)

减法操作

subtract(BigInteger val)

乘法操作

multiply(BigInteger val)

除法操作

divide(BigInteger val)

获取商及余数

divideAndRemainder(BigInteger val)

BigInteger biga = new BigInteger("7564567543");
BigInteger bigb = new BigInteger("32432");
BigInteger add = biga.add(bigb);
System.out.println(add);       // 7564599975
BigInteger subtract = biga.subtract(bigb);
System.out.println(subtract);     // 7564535111
BigInteger multiply = biga.multiply(bigb);
System.out.println(multiply);     // 245334054554576
BigInteger divide = biga.divide(bigb);
System.out.println(divide);      // 233243// 方法返回一个数组,数组中第一个元素为商,第二个元素为余数
BigInteger[] result = biga.divideAndRemainder(bigb);
System.out.println(result[0]);    // 233243
System.out.println(result[1]);    // 30567

2、BigDecimal

精确小数位数取商

>   divide(BigDecimal divisor, int scale, int roundingMode)

/**
 * divide(BigDecimal divisor, int scale, int roundingMode)
 * @param divisor 除数
 * @param scale 保留的小数位
 * @param roundingMode 进位模式
 *
 * 示例:保留两位小数四舍五入,代码如下
 */
BigDecimal biga = new BigDecimal("12.987327");
BigDecimal bigb = new BigDecimal(1);
BigDecimal divide = biga.divide(bigb, 2, BigDecimal.ROUND_HALF_UP);
System.out.println(divide);    // 12.99

日期时间处理

Date 类及 Calender 类用于处理日期类型数据,Date 类常与 SimpleDateFormat 类结合使用,Calender 类常用于日期计算。

1、Date

获取 long 类型日期    getTime()

1.1、

Date date = new Date();
System.out.println(date);long time = date.getTime();
System.out.println(time);

SimpleDateFormat 格式化 Date

1.2、

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");/**
 * Date 转换为 String
 * format(Date date)
 */
String format = sdf.format(new Date());
System.out.println(format);/**
 * String 转换为 Date
 * parse(String source)
 */
Date time = sdf.parse("2020-01-01 00:00:00");
System.out.println(time);

2、Calender

获取 Calender 实例    getInstance( )
Calendar calendar = Calendar.getInstance();// 获取年int year = calendar.get(Calendar.YEAR);
System.out.println(year);// 获取月(从 0 开始)int month = calendar.get(Calendar.MONTH) + 1;
System.out.println(month);// 获取日int day = calendar.get(Calendar.DAY_OF_MONTH);
System.out.println(day);// 获取时int hour = calendar.get(Calendar.HOUR_OF_DAY);
System.out.println(hour);// 获取分int minute = calendar.get(Calendar.MINUTE);
System.out.println(minute);// 获取秒int second = calendar.get(Calendar.SECOND);
System.out.println(second);
c982e9392a88868c69f52de32c3e3060.gif    关注微信公众号“痴猿说梦”,且看痴猿为您揭开代码的神秘面纱。 65b67cee99059a79ca4cdbe4c014c1c1.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值