java数学工具类Math详解(round方法)
作者:阿福97 发布时间:2022-09-10 17:01:00
标签:java,数学工具类,Math
数学工具类Math,供大家参考,具体内容如下
1. 概述
java.util.Math类是数学相关的工具类,里面提供了大量的静态方法,完成与数学运算相关的操作。
2. 基本的方法
public static double abs(double num);获取绝对值。有多种重载,absolutely绝对地
public static double ceil(double num);向上取整,ceil是天花板的意思
public static double floor(double num);向下取整,floor是地板的意思
public static long round(double num);四舍六入五成双(看下面代码的注释),round有大约,完整的意思
3. 四种方法一起通过代码演示一遍
public class MathMethod {
public static void main(String[] args) {
//abs方法,取绝对值
System.out.println(Math.abs(3.14)); //3.14
System.out.println(Math.abs(0)); //0
System.out.println(Math.abs(-2.2)); //2.2
System.out.println("---------------------");
//ceil方法,向上取整,往大的靠
System.out.println(Math.ceil(3.2)); //4.0
System.out.println(Math.ceil(3.8)); //4.0
System.out.println(Math.ceil(-3.2)); //-3.0
System.out.println(Math.ceil(-3.8)); //-3.0
System.out.println("---------------------");
//floor方法,向下取整,往小的靠
System.out.println(Math.floor(3.2)); //3.0
System.out.println(Math.floor(3.8)); //3.0
System.out.println(Math.floor(-3.2)); //-4.0
System.out.println(Math.floor(-3.8)); //-4.0
System.out.println("---------------------");
//【注意,面试高频】round方法,四舍 六入 五成双
//先看看四舍六入,如果出现负数,先转成正数,再四舍六入,最后加上负号
System.out.println(Math.round(3.4)); //3
System.out.println(Math.round(3.6)); //4
System.out.println(Math.round(-3.4)); //-3
System.out.println(Math.round(-3.6)); //-4
//五成双是什么意思呢?当出现0.5结尾的时候,就给它再加上+0.5,5不就成双了
//接着再对相加的结果进行floor运算
System.out.println(Math.round(-2.5)); //-2
System.out.println(Math.floor(-2.5 + 0.5)); //与Math.round(-2.5)结果一致
System.out.println(Math.round(2.5)); //3
System.out.println(Math.floor(2.5 + 0.5)); //与Math.round(2.5)结果一致
}
}
4. 圆周率Math.PI
在Math类的源码中,我们可以看到,它自定义的圆周率 PI = 3.14159265358979323846
以后的计算如果需要用到PI,尽量用已经定义好的圆周率,非常精确
来源:https://blog.csdn.net/weixin_43836046/article/details/96893054


猜你喜欢
- 概述ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。ArrayList不是
- Reflection也就是反射,是Java语言的一个重要特征,我们知道,在使用一个类之前,我们往往都已经创建好它了,比如创建一个类文件,然后
- 前言在单机应用时代,我们对一个共享的对象进行多线程访问的时候,使用java的synchronized关键字或者ReentrantLock类对
- 在做业务开发时,遇到了一个事务不起作用的问题。大概流程是这样的,方法内部的定时任务调用了一个带事务的方法,失败后事务没有回滚。查阅资料后,问
- 通过下面一张图看下要实现的功能,具体详情如下所示:现在我就来介绍些软件的其它功能。希望大家有所受益。模拟人为搜索商品在刷单的时候,不能直接拿
- java 中 System.out.println()和System.out.write()的区别.这两个函数一个是System
- 利用C#编写一个计算器。如下图,能够完成基本的四则运算。当然这个程序甚至还不上Windows附件那个自带的多功能计算器。 不过这个
- 有时候,我们需要将控件的背景颜色设定为透明,比如说label(标签)控件。那么,如何将控件的背景颜色设定为透明?是不是只要将控件的BackC
- Mybatis-Plus是一个优秀的Mybatis增强工具,目前更新到3.1.1。Mybatis-Plus原生提供了很多单表操作的方法,极大
- 面试题1:你们是怎样保存用户密码等敏感数据的?本题回答参考朱晔的《Java业务开发常见错误100例》我们知道,用户名、密码、身份证等都属于用
- 前面有写到Spring+SpringMVC+MyBatis深入学习及搭建(二)——MyBatis原始Dao开发和mapper代理开发MyBa
- 一、设置Fira_Code字体1.下载字体这里给出github下载链接,点击链接后在README.md中的Download & In
- 我们先假设一个场景想象一下,当一个项目出现bug的时候,恰巧这个时候需要你去修改,而当你打开项目之后,眼前的代码让你有一种特别严重的陌生感,
- 前言PowerManagerService之亮屏流程分析 分析了亮屏的流程,并归纳出了一个适用于亮屏或灭屏的通用的流程。 但是,灭屏流程还有
- 开篇Druid号称是Java语言中最好的数据库连接池,并且能够提供强大的监控和扩展功能。作为日常使用较多的数据库连接组件,纯粹个人兴趣研究下
- 本文实例为大家分享了Android仿iphone自定义滚动选择器的具体代码,供大家参考,具体内容如下一、多的不说,效果图,先走起二、实例源码
- 本文实例为大家分享了C#添加读取Word脚注尾注的具体代码,供大家参考,具体内容如下脚注和尾注是对文本的补充说明。脚注一般位于页面的底部,可
- Java集合的主要分为三种类型:• Set(集)• List(列表)• Map(映射)要深入理解集合首先要了解
- 本文实例讲述了C#将指定目录所有文件名转换成小写的方法。分享给大家供大家参考。具体如下:using System;using System.
- 上次写了一篇博文,但是每次更新图标时,桌面会闪烁(刷新)https://www.jb51.net/article/73350.htm,有博友