本文取自网络
Java的取整函数时间
Math.floor()、Math.ceil()、BigDecimal都是Java中的取整函数,但返回值却不一样
Math.floor()
通过该函数计算后的返回值是舍去小数点后的数值
如:Math.floor(3.2)返回3
Math.floor(3.9)返回3
Math.floor(3.0)返回3
Math.ceil()
ceil函数只要小数点非0,将返回整数部分+1
如:Math.ceil(3.2)返回4
Math.ceil(3.9)返回4
Math.ceil(3.0)返回3
----------------------------------------------------------
用Math.floor()做到四舍五入:
double a = 3.4,double b = Math.floor(a),if(a-b>=0.5){b += 1}
用Math.ceil()做到四舍五入:
double a = 3.4,double b = Math.ceil(a),if(b-a<=0.5){b += 1}
----------------------------------------------------------
BigDecimal四舍五入
传统的四舍五入,在Math类中并没有直接提供,必须使用Java.math.BigDecimal类来实现
new BigDecimal("2.0").setScale(0, BigDecimal.ROUND_HALF_UP)返回2
new BigDecimal("2.4").setScale(0, BigDecimal.ROUND_HALF_UP)返回2
new BigDecimal("2.5").setScale(0, BigDecimal.ROUND_HALF_UP)返回3
BigDecimal a = new BigDecimal(1000); return a.doubleValue();
==========================================
import java.math.*; public class Test { public static void main(String[] args) { MathContext mc = new MathContext(3, RoundingMode.HALF_DOWN); //精度为3,舍入模式为大于0.5进1,否则舍弃。 BigDecimal a=new BigDecimal(10); BigDecimal b=new BigDecimal(3); System.out.println(a.divide(b,mc)); } }
相关推荐
在Java编程语言中,`Math`类提供了几个用于处理数值的静态方法,其中包括`Math.round()`, `Math.ceil()`, 和 `Math.floor()`。这些方法主要用于处理浮点数,将它们转换成整数,但每种方法的取整策略不同。下面我们将...
Java 的 Math 类提供了多种数学函数,包括 floor、ceil 和 rint 函数。其中,floor 函数可以用于舍掉小数取整,ceil 函数可以用于凑整,而 rint 函数可以用于四舍五入取整。例如: ```java double i = 2.5; System....
#### Math.ceil(), Math.floor(), Math.round() `Math.ceil()`方法返回大于或等于参数的最小整数值;`Math.floor()`返回小于或等于参数的最大整数值;`Math.round()`则按四舍五入规则返回最接近的整数值。这些方法...
与 `Math.floor()` 相反,`Math.ceil()` 函数返回大于或等于给定浮点数的最小整数。对于正数,它会向上取整;对于负数,它会向下取整。 ```java double num = 3.2; int result = (int) Math.ceil(num); // result ...
Java 中的 Math、BigInteger 和 BigDecimal 类 Java 语言中提供了多种数学类来帮助开发者进行数学运算,包括 Math、BigInteger 和 BigDecimal 类。这些类提供了丰富的数学方法,帮助开发者快速高效地进行数学运算。...
- `Math.ceil(a)`:返回大于或等于double类型a的最小整数,即向上取整。 - `Math.floor(a)`:返回小于或等于double类型a的最大整数,即向下取整。 - `Math.max(a, b)`:返回两个整数a和b之间的较大值。 - `Math....
Java提供了`Math.floor()`函数来实现这一操作。例如: ```java double num = 3.14; int flooredNum = (int) Math.floor(num); ``` 在这个例子中,`flooredNum`的值将是3。 2. 向上取整:当需要将一个浮点数转换为...
`Math`类是Java标准库的一部分,提供了多种数学函数,包括`floor()`和`ceil()`。这两个方法可以用来近似地实现四舍五入,但它们并不完全等同于传统的四舍五入规则。 - `Math.floor()`:该方法返回不大于参数的最大...
在Java中,`Math.ceil()`方法实现了这个功能。例如,`double num = 3.1; double ceilNum = Math.ceil(num);`,`ceilNum`将会是4.0。 **地板函数(Floor Function)** 地板函数返回小于或等于输入值的最大整数。与...
1. 舍去小数取整:`Math.floor(3.5)`将返回3。 2. 四舍五入取整:`Math.rint(3.5)`将返回4。这种方式会保留最接近的整数,如果浮点数等于0.5,则向正无穷方向取整。 3. 进位取整:`Math.ceil(3.1)`将返回4。这将始终...
在处理数值时,Math类的方法如`abs()`用于获取绝对值,`ceil()`用于向上取整,`floor()`用于向下取整,`round()`用于四舍五入,`rint()`返回最接近的整数,`min()`和`max()`分别用于找到两个数中的最小值和最大值,...
3. **floor() 方法**:获取不大于参数的最大整数。 4. **round() 方法**:对浮点数进行四舍五入。 5. **random() 方法**:生成随机数。 6. **sqrt() 方法**:计算平方根。 7. **pow() 方法**:计算幂。 #### 三、...
1. **四舍五入**:使用`Math.round()`、`Math.floor()`或`Math.ceil()`对结果进行四舍五入,以减少不精确性的影响。 2. **比较阈值**:在比较浮点数时,不是直接使用`===`,而是设定一个很小的阈值(如`Number....
- `Math.floor(double a)`:返回不大于a的最大整数。 - `Math.ceil(double a)`:返回不小于a的最小整数。 - `Math.round(double a)`:对浮点数进行四舍五入处理。对于负数,-1.5会被舍入为-1而不是-2。 - **大...
2. `Math.ceil(x)`: 此方法返回大于或等于x的最小整数,它不进行四舍五入,而是向上取整。 3. `Math.floor(x)`: 相反,此方法返回小于或等于x的最大整数,即向下取整。 4. `Math.round(x * 10^n) / (10^n)`: 如果...
- `Math.floor()`和`Math.ceil()`分别返回不大于和不小于给定浮点数的最大整数值。 - `Math.exp()`计算`e`的幂,即`e^x`。 - `Math.log()`返回给定数的自然对数。 - `Math.max()`和`Math.min()`分别返回两个数中的...
此外,还有Ceil(向上取整)、Floor(向下取整)和Round(四舍五入)等方法。 在处理大整数或者高精度浮点数时,Java提供了BigInteger和BigDecimal类。这两个类允许我们进行任意精度的算术运算,适合于需要精确计算...