import java.math.BigDecimal; import java.util.Random; public class MatheExperse { public static void main(String[] args) { //进行四舍五入操作 System.out.println(Math.round(12.5)); /* * public static double random() 返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。 第一次调用该方法时,它将创建一个新的伪随机数生成器,与以下表达式完全相同 new java.util.Random 之后,新的伪随机数生成器可用于此方法的所有调用,但不能用于其他地方。 此方法是完全同步的,可允许多个线程使用而不出现错误。但是,如果许多线程需要以极高的速率生成伪随机数,那么这可能会减少每个线程对拥有自己伪随机数生成器的争用 */ System.out.println("进行随机数的生成:"+Math.random()); Random random=new Random(); System.out.println("生成一个0-10之间的整形随机数:"+random.nextInt(10)); System.out.println("返回一个数值的绝对值:"+Math.abs(-12)); System.out.println("对指定的double值类型数据进行向下取整操作:"+Math.floor(12.95)); System.out.println("对一个指定的数值对象进行向上取整操作:"+Math.ceil(12.015)); /** * BigDecimal对象是一种比double类型精度还要高的数据类型,常用与金额汇率运算等情况当中 * 在对象当中一般所默认进行接收的参数对象为字符串类型 */ BigDecimal bigDecimal=new BigDecimal("12.12346789123456789"); System.out.println("对bigDecimal类型对象进行输出:"+bigDecimal); BigDecimal a=new BigDecimal("10"); BigDecimal b=new BigDecimal("3"); System.out.println("进行加法操作:"+a.add(b)); System.out.println("进行减法操作:"+a.subtract(b)); System.out.println("进行乘法操作:"+a.multiply(b)); try { System.out.println("进行除法操作:"+a.divide(b)); } catch(ArithmeticException e) { e.printStackTrace(); System.out.println("出现异常:两个BigDecimal类型对象无法整除除尽"); } /* 对两个数字进行除法操作,并对最后的结果保留4为位小数进行向上取整操作 public static final int ROUND_HALF_UP,即要舍去的部分大于0.5的时候进位否则直接舍去 “最接近的”数字舍入,如果与两个相邻数字的距离相等,则为向上舍入的舍入模式。如果舍弃部分 >= 0.5,则舍入行为与 ROUND_UP 相同; 否则舍入行为与 ROUND_DOWN 相同。注意,这是我们大多数人在小学时就学过的舍入模式。 */ System.out.println("重新进行除法操作:"+a.divide(b,4,BigDecimal.ROUND_HALF_UP)); System.out.println("对BigDecimal类型对象进行四舍五入操作:"+new BigDecimal(15.1234).setScale(0, BigDecimal.ROUND_DOWN)); System.out.println("对BigDecimal类型对象进行四舍五入操作(向下直接舍去):"+new BigDecimal(15.1234).setScale(3, BigDecimal.ROUND_DOWN)); System.out.println("对BigDecimal类型对象进行四舍五入操作(向上进行进位):"+new BigDecimal(15.1234).setScale(3, BigDecimal.ROUND_UP)); } }
Math类当中常用方法小结
猜你喜欢
转载自blog.csdn.net/qq_34970891/article/details/80667705
今日推荐
周排行