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类当中常用方法小结
热度:52 发布时间:2023-10-24 03:46:40.0
相关解决方案
- Math.Random()随机数是怎么产生的
- 突然很奇怪(int)Math.random()*10只等于0,该怎么处理
- java.math.biginteger有位数限制么?解决方法
- 忽然很奇怪(int)Math.random()*10只等于0
- NetBeans中没法导入java.lang.Math
- 在以下方法或属性之间的调用不明确:“System.Math.Floor(decimal)”和“System.Math.Floor(double),该怎么处理
- 为什么输入0.705四舍五入(System.Math.Round)后得到的结果是0.70 ?该如何处理
- W3SCHOOL 里面的这个代码加上 Math.random()是什么意思啊
- javascript温习2:String & Math
- js利用apply(), Math object, js数组,对象完全智能应验
- Javascript Math ceil()、floor()、round()三个函数的差异
- Oracle培训(二十四)――JavaScript第四章知识点小结――JS内置对象 Array Date Math
- js Math 中数学函数用法 取整出 向下取整 向上取整
- setInterval("document.write(Math.random())"1000)为何不行?解决办法
- (Math.floor(Math.random()*3)==0))是什么?解决思路
- 请教怎样开发自己的jar包,就像rt.jar那样,也可以 import java.math.
- Math.random与java.util.Random的差别
- 施用 Math.random()来实现百钱百鸡方法
- 请教java3d里面这个 Math.PI/6 是什么意思
- Math.round到底应该得什么值解决思路
- android ant编译, 找不到符号: 步骤 setRoundingMode(java.math.RoundingMode) ,编译失败
- math.net类库,做一元线性回归用
- MySQL分段统计SQL写法 与 Mybatis 错误 java.math.BigDecimal cannot be cast to java.lang.Integer
- 为什么`math.ldexp`对于指数> 1024而不是对于指数<-1073会引发OverflowError?
- Math pow 函数不起作用
- java.math.BigInteger cannot be cast to java.lang.Long错误的正确解决方案
- SQL Server(1)——C#取整函数Math.Round、Math.Ceiling和Math.Floor
- HDU - 1757 - A Simple Math Problem ( 矩阵快速幂 )
- ACM-ICPC 2018 南京赛区网络预赛 A An Olympian Math Problem (简单数论题)
- ZOJ Problem Set -- 4085 Little Sub and Mr.Potato's Math Problem