`
SnailWong
  • 浏览: 184059 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

java 取整 四舍五入

阅读更多
package test;

import java.math.BigDecimal;

public class RoundHalfOff {

	public static void main(String[] args) {
		double i = 2, j = 2.1, k = 2.5, m = 2.9;
		System.out.println("舍掉小数取整:Math.floor(2)=" + (int) Math.floor(i));
		System.out.println("舍掉小数取整:Math.floor(2.1)=" + (int) Math.floor(j));
		System.out.println("舍掉小数取整:Math.floor(2.5)=" + (int) Math.floor(k));
		System.out.println("舍掉小数取整:Math.floor(2.9)=" + (int) Math.floor(m));

		/*
		 * 这段被注释的代码不能正确的实现四舍五入取整 System.out.println("四舍五入取整:Math.rint(2)=" +
		 * (int)Math.rint(i)); System.out.println("四舍五入取整:Math.rint(2.1)=" +
		 * (int)Math.rint(j)); System.out.println("四舍五入取整:Math.rint(2.5)=" +
		 * (int)Math.rint(k)); System.out.println("四舍五入取整:Math.rint(2.9)=" +
		 * (int)Math.rint(m));
		 * 
		 * System.out.println("四舍五入取整:(2)=" + new DecimalFormat("0").format(i));
		 * System.out.println("四舍五入取整:(2.1)=" + new
		 * DecimalFormat("0").format(i)); System.out.println("四舍五入取整:(2.5)=" +
		 * new DecimalFormat("0").format(i)); System.out.println("四舍五入取整:(2.9)="
		 * + new DecimalFormat("0").format(i));
		 */

		System.out.println("四舍五入取整:(2)=" + new BigDecimal("2").setScale(0, BigDecimal.ROUND_HALF_UP));
		System.out.println("四舍五入取整:(2.1)=" + new BigDecimal("2.1").setScale(0, BigDecimal.ROUND_HALF_UP));
		System.out.println("四舍五入取整:(2.5)=" + new BigDecimal("2.5").setScale(0, BigDecimal.ROUND_HALF_UP));
		System.out.println("四舍五入取整:(2.9)=" + new BigDecimal("2.9").setScale(0, BigDecimal.ROUND_HALF_UP));

		System.out.println("凑整:Math.ceil(2)=" + (int) Math.ceil(i));
		System.out.println("凑整:Math.ceil(2.1)=" + (int) Math.ceil(j));
		System.out.println("凑整:Math.ceil(2.5)=" + (int) Math.ceil(k));
		System.out.println("凑整:Math.ceil(2.9)=" + (int) Math.ceil(m));

		System.out.println("舍掉小数取整:Math.floor(-2)=" + (int) Math.floor(-i));
		System.out.println("舍掉小数取整:Math.floor(-2.1)=" + (int) Math.floor(-j));
		System.out.println("舍掉小数取整:Math.floor(-2.5)=" + (int) Math.floor(-k));
		System.out.println("舍掉小数取整:Math.floor(-2.9)=" + (int) Math.floor(-m));

		System.out.println("四舍五入取整:(-2)=" + new BigDecimal("-2").setScale(0, BigDecimal.ROUND_HALF_UP));
		System.out.println("四舍五入取整:(-2.1)=" + new BigDecimal("-2.1").setScale(0, BigDecimal.ROUND_HALF_UP));
		System.out.println("四舍五入取整:(-2.5)=" + new BigDecimal("-2.5").setScale(0, BigDecimal.ROUND_HALF_UP));
		System.out.println("四舍五入取整:(-2.9)=" + new BigDecimal("-2.9").setScale(0, BigDecimal.ROUND_HALF_UP));

		System.out.println("凑整:Math.ceil(-2)=" + (int) Math.ceil(-i));
		System.out.println("凑整:Math.ceil(-2.1)=" + (int) Math.ceil(-j));
		System.out.println("凑整:Math.ceil(-2.5)=" + (int) Math.ceil(-k));
		System.out.println("凑整:Math.ceil(-2.9)=" + (int) Math.ceil(-m));
	}
}

 

分享到:
评论

相关推荐

    java四舍五入

    然而,在 Java 语言中,rint 函数不能正确地实现四舍五入取整。例如: ```java double i = 2.5; System.out.println("四舍五入取整:Math.rint(2.5) = " + (int)Math.rint(i)); ``` 上述代码不能正确地实现四舍五入...

    java 四舍五入 需要的朋友看看

    在Java编程语言中,四舍五入是一种常见的数学操作,用于处理浮点数或小数,使其更加符合实际应用需求。本文将详细解析如何在Java中实现四舍五入,并探讨不同方法的适用场景。 ### Java四舍五入的基础概念 四舍五入...

    四舍五入_四舍五入问题_源码

    从标签"四舍五入问题"来看,可能还会涉及到更复杂的四舍五入策略,比如指定保留的小数位数、选择向上或向下取整等。不过,根据提供的描述,这个问题相对简单,主要关注的是基本的四舍五入和整数部分的提取。 至于...

    关于java的四舍五入问题

    在Java编程语言中,处理数字的四舍五入操作是一项常见的任务,特别是在计算、财务或者数据分析等场景。本文将深入探讨Java中如何进行四舍五入,并基于提供的`Arith.java`文件,来分析其可能包含的实现方式。 首先,...

    java 使用取整函数

    如果浮点数是半整数(如 3.5 或 -3.5),`Math.round()` 将会进行四舍五入。这个方法适用于需要更大范围整数的情况。 ```java double num = 3.6; long result = Math.round(num); // result will be 4L double num...

    java 取整

    这个过程可以分为多种类型,包括向下取整、向上取整、四舍五入等。本篇文章将深入探讨Java中如何进行这些取整操作。 1. 向下取整:这是最简单的取整方式,它会丢弃任何小数部分,只保留整数部分。Java提供了`Math....

    JAVA取整计算器源码

    3. **Math.round()**:四舍五入到最接近的整数,如果数值是负数,会遵循与Math.floor()相同的原则。 4. **(int) 转换**:将浮点数直接转换为整数,这会导致小数部分被截断,类似于整数除法的效果。 在描述中,...

    金额的大小转换及小数的四舍五入处理

    四舍五入模式有多种,如`ROUND_UP`(向上取整)、`ROUND_DOWN`(向下取整)等,`ROUND_HALF_UP`是最常用的,即常规的四舍五入规则。 总结起来,金额的大小转换涉及到数字的格式化,确保其符合人类阅读习惯;而小数...

    sishewuru.rar_四舍五入

    除了标准的四舍五入,还有其他的舍入策略,如向零取整(ROUND_TO_ZERO)、向上取整(ROUND_UP)和向下取整(ROUND_DOWN)。这些策略可以根据实际需求选择使用,比如在金融计算中通常会使用不偏向任何一方的舍入策略...

    java代码-BigDecimal 四舍五入保留2位小数. 金额从单位分转成单位元

    常见的舍入模式有`RoundingMode.HALF_UP`(常规四舍五入),`RoundingMode.DOWN`(向下取整),`RoundingMode.UP`(向上取整)等。这里我们使用`HALF_UP`: ```java BigDecimal roundedDollar = oneDollar.setScale...

    java中的三种取整函数总结

    总之,Java中的Math.floor()、Math.rint()和Math.ceil()分别对应着向下取整、四舍五入取整和向上取整的操作,它们为开发者提供了灵活的数据处理手段。在编程实践中,应结合具体场景选择合适的取整方法,以确保代码的...

    Rounding2:继续四舍五入 app 介绍方法和数组

    可以使用`BigDecimal`类的`setScale()`方法,它可以设置保留的小数位数,并指定四舍五入模式,如`RoundingMode.HALF_UP`(通常的四舍五入)、`RoundingMode.DOWN`(向下取整)等。 ```java BigDecimal bd = new ...

    Math.Round()--c#与java的区别.pdf

    在金融交易中,单纯的四舍五入可能会导致长期的误差积累,使得金融机构可能出现盈亏不平衡。为了解决这个问题,银行家舍入法应运而生。 银行家舍入的核心思想是确保每一轮舍入之后,数据的正负误差可以相互抵消,...

    java新手初悟

    【Java新手初悟】这篇内容主要涉及了Java编程中的几个基础知识点,包括四舍五入的处理、抽象类与接口的应用以及在命令行下编译和运行带包的Java文件,以及如何打包成JAR文件。以下是这些知识点的详细解释: 1. **四...

    几个很不错的Java游戏源代码

    例如,使用ActionListener监听按钮点击事件,使用Integer类的方法进行数字的处理,如`Math.round()`用于四舍五入取整。 综合这些游戏源代码,开发者不仅能巩固Core Java的基本语法,如类、对象、继承、封装等面向...

    Java中限制小数位数问题

    其中,`ROUND_HALF_UP`表示标准的四舍五入规则,即当小数部分超过半位时向上取整。如果需要采用不同的舍入策略(例如向零舍入、向下舍入等),可以通过传入不同的枚举值来实现。 #### 方式二:使用`DecimalFormat`...

    java问题及对策

    2. 四舍五入取整:`Math.rint(3.5)`将返回4。这种方式会保留最接近的整数,如果浮点数等于0.5,则向正无穷方向取整。 3. 进位取整:`Math.ceil(3.1)`将返回4。这将始终返回不小于给定浮点数的最大整数。 如果需要...

    06第四次作业解析1

    这个表达式为⌊(n-1)/m⌋+1,这里解释了为何使用“地板”而不是“四舍五入”,因为“地板”确保结果总是向下取整,符合该公式的需求。 在数列和线性递推式的讨论中,文章强调了数学中的问题解决策略,即通过将未知...

    java常用工具类 数字工具类

    2. roundDown(double v) 方法:该方法用于非四舍五入取整处理。该方法将输入的数字v转换为BigDecimal形式,然后使用ROUND_DOWN模式将其取整。 3. roundUp(double v) 方法:该方法用于四舍五入取整处理。该方法将...

    详解Java中Math.round()的取整规则

    在本文中,我们详细介绍了 Java 中 Math.round() 的取整规则,包括四舍五入的原理和示例代码的验证。我们还讨论了五成双的规则,了解了 Math.round() 的取整规则对大家的学习或者工作具有一定的参考学习价值。

Global site tag (gtag.js) - Google Analytics