Java.math.RoundingMode 枚举


介绍

java.math.RoundingMode枚举指定能够丢弃精度的数值运算的舍入Behave每种舍入模式指示如何计算舍入结果的最低有效返回数字。

如果返回的数字少于表示精确数值结果所需的数字,则丢弃的数字将被称为丢弃的分数,无论这些数字对数字值的贡献如何。换句话说,被视为数值时,被丢弃的分数可以具有大于1的绝对值。

该枚举旨在替换 BigDecimal 中舍入模式常量的基于整数的枚举(BigDecimal.ROUND_UP、BigDecimal.ROUND_DOWN 等)。

枚举声明

以下是java.math.RoundingMode枚举的声明-

public enum RoundingMode
   extends Enum<RoundingMode>

常数

以下是java.math.RoundingMode枚举的常量-

  • CEILING - 舍入模式向正无穷大舍入。

  • DOWN - 舍入模式向零舍入。

  • FLOOR - 舍入模式向负无穷大舍入。

  • HALF_DOWN - 舍入模式向“最近邻居”舍入,除非两个邻居等距,在这种情况下,向下舍入。

  • HALF_EVEN - 舍入模式向“最近邻居”舍入,除非两个邻居等距,在这种情况下,向偶数邻居舍入。

  • HALF_UP - 舍入模式向“最近邻居”舍入,除非两个邻居等距,在这种情况下向上舍入。

  • 不必要- 舍入模式断言所请求的操作具有准确的结果,因此不需要舍入。

  • UP - 舍入模式从零舍入。

枚举方法

先生。 方法及说明
1

静态 RoundingMode valueOf(int rm)

此方法返回与 BigDecimal 中的旧整数舍入模式常量相对应的 RoundingMode 对象。

2

静态 RoundingMode valueOf(字符串名称)

此方法返回具有指定名称的该类型的枚举常量。

3

静态 RoundingMode[ ] 值()

此方法返回一个包含此枚举类型常量的数组,按照声明的顺序排列。

例子

以下示例显示 math.RoundingMode 方法的用法。

package com.tutorialspoint;

import java.math.*;

public class RoundingModeDemo {

   public static void main(String[] args) {

      // create 2 RoundingMode objects
      RoundingMode rm1, rm2;

      // create and assign values to rm and name
      int rm = 5;
      String name = "UP";

      // static methods are called using enum name

      // assign the the enum constant of rm to rm1
      rm1 = RoundingMode.valueOf(rm);

      // assign the the enum constant of name to rm2
      rm2 = RoundingMode.valueOf(name);

      String str1 = "Enum constant for integer " + rm + " is " +rm1;
      String str2 = "Enum constant for string " + name + " is " +rm2;

      // print rm1, rm2  values
      System.out.println( str1 );
      System.out.println( str2 );

      String str3 = "Enum constants of RoundingMode in order are :";

      System.out.println( str3 );

      // print the array of enum constatnts using for loop
      for (RoundingMode c : RoundingMode.values())
      System.out.println(c);
   }
}

让我们编译并运行上面的程序,这将产生以下结果 -

Enum constant for integer 5 is HALF_DOWN
Enum constant for string UP is UP
Enum constants of RoundingMode in order are :
UP
DOWN
CEILING
FLOOR
HALF_UP
HALF_DOWN
HALF_EVEN
UNNECESSARY