`
xiangxm
  • 浏览: 66937 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
  • xiangxm: xurichusheng 写道一些涉及到密码保存的就需要加密/ ...
    3DES加密
  • xurichusheng: 一些涉及到密码保存的就需要加密/解密了。不需要解密的密码,如登 ...
    3DES加密

关于java.lang.Math类的round() ,floor() ,ceil() 方法

    博客分类:
  • Java
阅读更多
突然想起上次做题的时候我搞错了......我一直在误区中......于是写在这里警示一下。
其实许多大牛对于这个已经说了无数遍了,我就不多说了。

round()方法:

static long round(double a)
          Returns the closest long to the argument.
static int round(float a)
          Returns the closest int to the argument.

查看jdk文档,看看这几个方法到底是怎么回事。

public static long round(double a)
Returns the closest long to the argument. The result is rounded to an integer by adding 1/2, taking the floor of the result, and casting the result to type long. In other words, the result is equal to the value of the expression: 

(long)Math.floor(a + 0.5d)
Special cases: 

If the argument is NaN, the result is 0. 
If the argument is negative infinity or any value less than or equal to the value of Long.MIN_VALUE, the result is equal to the value of Long.MIN_VALUE. 
If the argument is positive infinity or any value greater than or equal to the value of Long.MAX_VALUE, the result is equal to the value of Long.MAX_VALUE.

public static int round(float a)
Returns the closest int to the argument. The result is rounded to an integer by adding 1/2, taking the floor of the result, and casting the result to type int. In other words, the result is equal to the value of the expression: 

(int)Math.floor(a + 0.5f)

Special cases: 

If the argument is NaN, the result is 0. 
If the argument is negative infinity or any value less than or equal to the value of Integer.MIN_VALUE, the result is equal to the value of Integer.MIN_VALUE. 
If the argument is positive infinity or any value greater than or equal to the value of Integer.MAX_VALUE, the result is equal to the value of Integer.MAX_VALUE.


ceil()和floor()方法:
public static double ceil(double a)
Returns the smallest (closest to negative infinity) double value that is greater than or equal to the argument and is equal to a mathematical integer. Special cases: 
If the argument value is already equal to a mathematical integer, then the result is the same as the argument. 
If the argument is NaN or an infinity or positive zero or negative zero, then the result is the same as the argument. 
If the argument value is less than zero but greater than -1.0, then the result is negative zero.
Note that the value of Math.ceil(x) is exactly the value of -Math.floor(-x). 

public static double floor(double a)
Returns the largest (closest to positive infinity) double value that is less than or equal to the argument and is equal to a mathematical integer. Special cases: 
If the argument value is already equal to a mathematical integer, then the result is the same as the argument. 
If the argument is NaN or an infinity or positive zero or negative zero, then the result is the same as the argument.



基础很重要,有些东西不是相当然而,万丈高楼还的平地起!!
分享到:
评论

相关推荐

    java.lang.Math

    此外,对于源码分析,`Math.java`文件揭示了这些方法的具体实现。虽然Java的`Math`类的部分方法可能被优化为本地代码,但源码中仍可看到大部分算法的Java实现,这对于理解其工作原理非常有帮助。 `Math`类是线程...

    java中math类的使用

    在Java编程语言中,`java.lang.Math`类提供了一系列用于执行基本数学运算的方法和常量。这个类包含静态方法和常量,使得开发者无需实例化对象即可直接调用其功能,极大地简化了数学计算的过程。 ### 常量 #### ...

    java中math类.docx

    ### Java中的Math类详解 #### 一、概述 `Math`类是Java标准库中的一个核心类,位于`java.lang`包下,...以上就是关于Java中`Math`类的相关知识点的详细介绍,包括常用方法的使用示例以及部分高级数学函数的简要说明。

    java类库和常用类简介-PPT.ppt

    `Math`类是`java.lang`包中的一个静态类,提供了丰富的数学运算功能。该类没有构造方法,所有的方法都是静态的,可以直接通过类名调用。 - **常量**:`Math.E`表示自然对数的底数e,`Math.PI`表示圆周率π。 - **...

    Java常用包

    Java语言提供了多种常用包和类,包括java.lang、String、StringBuffer、Math、Object、Class、Constructor、Method、Field、Date、Calendar、SimpleDateFormat、File等,这些包和类为Java开发提供了强大的支持。

    JAVA lang包PPT

    - `Math`类包含了许多数学运算的静态方法,如求平方根`sqrt()`, 求最大值`max()`, 求最小值`min()`, 向上取整`ceil()`, 向下取整`floor()`, 四舍五入`round()`等。这些方法对于进行数学计算非常有用。 6. **示例...

    java中math类.pdf

    Java中的Math类是Java标准库中的核心类之一,位于java.lang包内,它提供了一系列用于执行基本数学运算的方法。Math类中的所有方法都是静态的,这意味着我们不需要创建Math类的实例,可以直接通过类名调用这些方法。...

    【Java编程教程】详解 Java Math 类.pdf

    在Java编程中,`Math`类是`java.lang`包下的一个核心类,它提供了大量的静态方法,用于执行各种数学运算。这个类的主要目的是提供精确的浮点数运算,以及处理一些基本的数学函数。在本教程中,我们将深入探讨`Math`...

    Java Number & Math 类.docx

    Math 类位于`java.lang`包中,包含了许多静态方法,用于执行基本的数学运算。例如,求平方根、对数、指数、三角函数等。以下是一些常用的Math类方法: 1. **sin(double a)**:返回给定角度(弧度制)的正弦值。 2. ...

    Java软件开发实战 Java基础与案例开发详解 9-6 Random类和Math类 共9页.pdf

    `Math` 类位于`java.lang`包中,包含了许多用于执行基本数学运算的方法,如平方根、指数、对数等。 **生成随机数:** `Math.random()`方法返回一个`double`值,范围是[0.0, 1.0),可以用来生成特定范围内的随机数。...

    Java开发过程中常用的实用类

    例如:`"sssss.java".endsWith(".java")` 返回 `true`。 - **替换字符**:通过 `replace` 方法可以替换字符串中的特定字符。例如:`s="1284o062i371"; s=s.replace("o","0").replace("i","1");` 将所有 "o" 替换为 ...

    基于Java中Math类的常用函数总结

    Java中的Math类是Java标准库(java.lang.Math)的一部分,提供了许多用于执行基本数学运算的静态方法。这个类包含了各种数学函数,可以帮助开发者处理常见的数学计算。以下是对Math类中常用函数的详细解释: 1. **...

    Java学习教程-java中number类浅析.docx

    在Java语言中,`Number`类作为所有基本数值类型的包装类的基础类,它提供了一系列用于处理数值的方法。这些包装类包括`Integer`、`Long`、`Byte`、`Double`、`Float`和`Short`等。理解`Number`类以及它的子类如何...

    javaMath:该项目中核心java中所有可用的math函数。 使用蚀月神

    8. **舍入操作**: `Math.round(x)`将x四舍五入到最接近的整数,`Math.floor(x)`向下取整,`Math.ceil(x)`向上取整。 9. **最大值和最小值**: `Math.max(a, b)`和`Math.min(a, b)`用于找出两个数中的最大值和最小值...

    day13_API-异常.pdf

    Java 的 Math 类是 java.lang 包中的一个final 类,提供了许多静态方法来执行基本数学运算。这些方法包括: * abs(int a):返回参数的绝对值 * ceil(double a):返回大于或等于参数的最小 double 值,等于一个整数 ...

    java中的数学计算函数的总结

    在Java中,这些函数主要集中在`java.lang.Math`类和`java.math`包中。 `java.lang.Math`类是Java标准库的核心部分,它包含了基本的数学运算,如指数、对数、平方根和三角函数等。`Math`类的所有方法都是静态的,...

Global site tag (gtag.js) - Google Analytics