java.math

Class MathContext

  • All Implemented Interfaces:
    Serializable

    public final class MathContext
    extends Object
    implements Serializable
    Immutable objects which encapsulate the context settings which describe certain rules for numerical operators, such as those implemented by the BigDecimal class.

    The base-independent settings are:

    1. precision: the number of digits to be used for an operation; results are rounded to this precision
    2. roundingMode: a RoundingMode object which specifies the algorithm to be used for rounding.
    Since:
    1.5
    See Also:
    BigDecimal, RoundingMode, Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static MathContext DECIMAL128
      A MathContext object with a precision setting matching the IEEE 754R Decimal128 format, 34 digits, and a rounding mode of HALF_EVEN, the IEEE 754R default.
      static MathContext DECIMAL32
      A MathContext object with a precision setting matching the IEEE 754R Decimal32 format, 7 digits, and a rounding mode of HALF_EVEN, the IEEE 754R default.
      static MathContext DECIMAL64
      A MathContext object with a precision setting matching the IEEE 754R Decimal64 format, 16 digits, and a rounding mode of HALF_EVEN, the IEEE 754R default.
      static MathContext UNLIMITED
      A MathContext object whose settings have the values required for unlimited precision arithmetic.

        

    • Constructor Summary

      Constructors 
      Constructor and Description
      MathContext(int setPrecision)
      Constructs a new MathContext with the specified precision and the HALF_UP rounding mode.
      MathContext(int setPrecision, RoundingMode setRoundingMode)
      Constructs a new MathContext with a specified precision and rounding mode.
      MathContext(String val)
      Constructs a new MathContext from a string.

        

    • Field Detail

      • UNLIMITED

        public static final MathContext UNLIMITED
        A MathContext object whose settings have the values required for unlimited precision arithmetic. The values of the settings are: precision=0 roundingMode=HALF_UP
      • DECIMAL32

        public static final MathContext DECIMAL32
        A MathContext object with a precision setting matching the IEEE 754R Decimal32 format, 7 digits, and a rounding mode of HALF_EVEN, the IEEE 754R default.
      • DECIMAL64

        public static final MathContext DECIMAL64
        A MathContext object with a precision setting matching the IEEE 754R Decimal64 format, 16 digits, and a rounding mode of HALF_EVEN, the IEEE 754R default.
      • DECIMAL128

        public static final MathContext DECIMAL128
        A MathContext object with a precision setting matching the IEEE 754R Decimal128 format, 34 digits, and a rounding mode of HALF_EVEN, the IEEE 754R default.
    • Constructor Detail

      • MathContext

        public MathContext(int setPrecision)
        Constructs a new MathContext with the specified precision and the HALF_UP rounding mode.
        Parameters:
        setPrecision - The non-negative int precision setting.
        Throws:
        IllegalArgumentException - if the setPrecision parameter is less than zero.
      • MathContext

        public MathContext(int setPrecision,
                   RoundingMode setRoundingMode)
        Constructs a new MathContext with a specified precision and rounding mode.
        Parameters:
        setPrecision - The non-negative int precision setting.
        setRoundingMode - The rounding mode to use.
        Throws:
        IllegalArgumentException - if the setPrecision parameter is less than zero.
        NullPointerException - if the rounding mode argument is null
      • MathContext

        public MathContext(String val)
        Constructs a new MathContext from a string. The string must be in the same format as that produced by the toString() method.

        An IllegalArgumentException is thrown if the precision section of the string is out of range (< 0) or the string is not in the format created by the toString() method.

        Parameters:
        val - The string to be parsed
        Throws:
        IllegalArgumentException - if the precision section is out of range or of incorrect format
        NullPointerException - if the argument is null
    • Method Detail

      • getPrecision

        public int getPrecision()
        Returns the precision setting. This value is always non-negative.
        Returns:
        an int which is the value of the precision setting
      • equals

        public boolean equals(Object x)
        Compares this MathContext with the specified Object for equality.
        Overrides:
        equals in class Object
        Parameters:
        x - Object to which this MathContext is to be compared.
        Returns:
        true if and only if the specified Object is a MathContext object which has exactly the same settings as this object
        See Also:
        Object.hashCode(), HashMap
      • toString

        public String toString()
        Returns the string representation of this MathContext. The String returned represents the settings of the MathContext object as two space-delimited words (separated by a single space character, '\u0020', and with no leading or trailing white space), as follows:
        1. The string "precision=", immediately followed by the value of the precision setting as a numeric string as if generated by the Integer.toString method.
        2. The string "roundingMode=", immediately followed by the value of the roundingMode setting as a word. This word will be the same as the name of the corresponding public constant in the RoundingMode enum.

        For example:

         precision=9 roundingMode=HALF_UP
         
        Additional words may be appended to the result of toString in the future if more properties are added to this class.
        Overrides:
        toString in class Object
        Returns:
        a String representing the context settings

Traduction non disponible

Les API Java ne sont pas encore traduites en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.

Document créé le 30/08/2006, dernière modification le 04/03/2020
Source du document imprimé : https://www.gaudry.be/java-api-rf-java/math/MathContext.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : https://docs.oracle.com, MathContext

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut