Java-math-enumerations

提供:Dev Guides
移動先:案内検索

Java.math.RoundingMode列挙

前書き

*java.math.RoundingMode* 列挙は、精度を破棄できる数値演算の丸め動作を指定します。 各丸めモードは、丸められた結果の返された最下位桁の計算方法を示します。

正確な数値結果を表すのに必要な桁よりも少ない桁が返される場合、数字の値に対する桁の寄与に関係なく、破棄された桁は破棄された小数と呼ばれます。 言い換えると、数値と見なされると、破棄される小数部の絶対値は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 -両方の近傍が等距離でない限り、「最近傍」に向かって丸める丸めモード。
  • UNNECESSARY -要求された操作に正確な結果があることをアサートするための丸めモード。したがって、丸めは必要ありません。
  • UP -ゼロから丸める丸めモード。

列挙型メソッド

Sr.No. Method & Description
1

static RoundingMode valueOf(int rm)

このメソッドは、BigDecimalのレガシー整数丸めモード定数に対応するRoundingModeオブジェクトを返します。

2

static RoundingMode valueOf(String name)

このメソッドは、指定された名前を持つこのタイプの列挙定数を返します。

3

static RoundingMode[ ] values()

このメソッドは、この列挙型の定数を含む配列を宣言された順序で返します。

次の例は、math.RoundingModeメソッドの使用法を示しています。

package com.finddevguides;

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