Java的Math类中提供了一系列关于数学运算的静态方法,常见的运算整理如下[1]

算数运算

Math.sqrt()     // 平方根
Math.cbrt() // 立方根
Math.pow(a, b) // 计算a的b次幂
Math.max(a, b) // 计算最大值
Math.min(a, b) // 计算最小值
Math.abs(a, b) // 取绝对值

舍入运算

Math.ceil()     // 向上取整
Math.floor() // 向下取整
Math.round() // 四舍五入, 返回int(参数为float时)或long(参数为double时)
Math.rint() // 四舍五入, 返回double值(在 x.5 时向偶数舍入)

注意:除了中间值(.5)外,二者都是选择向靠近它的整数舍入。在不考虑返回值类型的情况下,二者的主要区别在于Math.round在.5时选择向大数舍入, 而Math.rint()会在.5的时候选择向靠近它的偶数舍入,例如1.5和2.5都向2舍入。

Math.roundMath.rint的区别:

随机数

Math自带一个随机数方法Math.random(), 用来生成一个[0, 1)范围内均匀分布的double类型(伪)随机数。也可以使用它通过算数运算来组合形成各个区间的随机数:

Math.randon() * 2       // [0, 2)
Math.random() + 1 // [1, 2)
Math.random() * 3 + 3 // [3, 6)
...

java的工具类java.util.Random包中提供了更多关于随机数的方法

高级数学运算

// 对数运算
Math.log() // 自然对数(底数e)
Math.log10() // 常用对数(底数10)
// 三角函数运算
Math.sin()
Math.cos()
Math.tan()

  1. 部分参考内容链接

Java数学函数的使用的更多相关文章

  1. Java数学函数Math类

    Java数学函数Math类常用: Math.abs(12.3); //12.3 返回这个数的绝对值 Math.abs(-12.3); //12.3 Math.copySign(1.23, -12.3) ...

  2. java数学函数Math类中常用的方法

    Math类提供了常用的一些数学函数,如:三角函数.对数.指数等.一个数学公式如果想用代码表示,则可以将其拆分然后套用Math类下的方法即可. Math.abs(12.3);               ...

  3. java数学函数库 API(转)

    原文地址:http://www.24xuexi.com/w/2011-11-08/98206.html 首先给大家看看Math类所提供的主要方法,下面的列表给出了Math类的主要方法,如果要理解Mat ...

  4. JAVA数学函数与常量

    在JAVA中,没有幂运算,因此需要借助于Math类的pow方法. double y = Math.pow(x,a) Math类提供了一些常用的三角函数: Math.sin Math.cos Math. ...

  5. Java语言程序设计(基础篇) 第四章 数学函数、字符和字符串

    第四章 数学函数.字符和字符串 4.2 常用数学函数 方法分三类:三角函数方法(trigonometric method).指数函数方法(exponent method)和服务方法(service m ...

  6. java的数学函数总结

    java的数学函数都放在java.lang这个包中,并且这些函数的方法在类Math中是作为static方法出现的,所以要引用一个特定的函数,只需将类Math和一个圆点写在要使用的方法前就好.如方法sq ...

  7. Java开发笔记(十一)常见的数学函数

    前面介绍了Java编程的四则运算,虽然提供了基础的加减乘除符号,但是数学上还有其它运算符号,包括四舍五入用到的约等号≍.求绝对值的“| |”.开平方的“√ ̄”,这些运算符形态各异,而且并非ASCII码 ...

  8. java笔记 -- 数学函数与常量

    Math类中, 包含了各种数学函数 不用在数学方法名和常量名前添加前缀Math., 只要在源文件的顶部加上这行代码: import static java.lang.Math.*; (静态导入) 例: ...

  9. java===java基础学习(2)---运算符,三元操作符,数学函数

    主要介绍运算符,和数学函数以及三元运算符: package testbotoo; public class test1 { public static void main(String[] args) ...

随机推荐

  1. SpringBoot 整合缓存Cacheable实战详细使用

    前言 我知道在接口api项目中,频繁的调用接口获取数据,查询数据库是非常耗费资源的,于是就有了缓存技术,可以把一些不常更新,或者经常使用的数据,缓存起来,然后下次再请求时候,就直接从缓存中获取,不需要 ...

  2. kubernetes中headless类型的service

    目录 初识headless类型的service 开始研究headless类型的service headless类型的service之我的理解 初识headless类型的service 第一次使用ran ...

  3. 用三个while循环和tkinter实现一个显示屏

    用三个while循环和tkinter实现一个显示屏 import tkinter as tk import time # 输入框是跟程序打交道的一个途径,例如程序要求你输入账号密码,那么它就需要提供两 ...

  4. SQL中的聚合函数运用

    参考网址: https://zhuanlan.zhihu.com/p/245115561 聚合函数是什么 聚合函数是对一组值执行计算,并返回单个值的函数.常与 SELECT 语句的 GROUP BY ...

  5. .Net Core 配置系统解析

    特性 支持多种格式 xml json ini memory command env 支持多层嵌套 //.Net Core { "username": "Jack" ...

  6. (强制)要求覆写equals必须覆写hashCode(原理分析)

    hashCode和equals hashCode和equals用来标识对象,两个方法协同工作可用来判断两个对象是否相等.众所周知,根据生成的哈希将数据散列开来,可以使存取元素更快.对象通过调用Obje ...

  7. 关于windows下 python3安装 cython的说明

    针对python3.6希望在windows环境下安装cython,但是网上任何关于mingw的尝试都没有生效.所以只能下载 vs, 1.去官网https://visualstudio.microsof ...

  8. @ModelAttribute 与@InitBinder

    3.4.6 @ModelAttribute 注解 Mod lAttribut 通常作用在 Controller 的某个方法上,此方法会首先被调用, 井将方法 结果作为 Model 的属性 然后再调用对 ...

  9. Java线程池工作原理

    前言 当项目中有频繁创建线程的场景时,往往会用到线程池来提高效率.所以,线程池在项目开发过程中的出场率是很高的. 那线程池是怎么工作的呢?它什么时候创建线程对象,如何保证线程安全... 什么时候创建线 ...

  10. 一键备份公众号的所有文章到PDF,再也不用担心想看的文章被删了

    有的时候,我们会发现收藏的某个微信公众号文章会被删或者和谐了,尤其是对自己非常实用的文章,一定会后悔当初怎么没有复制或者备份下来. 单篇的公众号文章要备份,随便百度一下就能找到非常多方法,这里就不多废 ...