Class ComplexFormat


  • public class ComplexFormat
    extends java.lang.Object
    Formats a Complex number in cartesian format "Re(c) + Im(c)i". 'i' can be replaced with 'j' (or anything else), and the number format for both real and imaginary parts can be configured.
    • Constructor Summary

      Constructors 
      Constructor Description
      ComplexFormat()
      Create an instance with the default imaginary character, 'i', and the default number format for both real and imaginary parts.
      ComplexFormat​(java.lang.String imaginaryCharacter)
      Create an instance with a custom imaginary character, and the default number format for both real and imaginary parts.
      ComplexFormat​(java.lang.String imaginaryCharacter, java.text.NumberFormat format)
      Create an instance with a custom imaginary character, and a custom number format for both real and imaginary parts.
      ComplexFormat​(java.lang.String imaginaryCharacter, java.text.NumberFormat realFormat, java.text.NumberFormat imaginaryFormat)
      Create an instance with a custom imaginary character, a custom number format for the real part, and a custom number format for the imaginary part.
      ComplexFormat​(java.text.NumberFormat format)
      Create an instance with a custom number format for both real and imaginary parts.
      ComplexFormat​(java.text.NumberFormat realFormat, java.text.NumberFormat imaginaryFormat)
      Create an instance with a custom number format for the real part and a custom number format for the imaginary part.
    • Constructor Detail

      • ComplexFormat

        public ComplexFormat()
        Create an instance with the default imaginary character, 'i', and the default number format for both real and imaginary parts.
      • ComplexFormat

        public ComplexFormat​(java.text.NumberFormat format)
                      throws NullArgumentException
        Create an instance with a custom number format for both real and imaginary parts.
        Parameters:
        format - the custom format for both real and imaginary parts.
        Throws:
        NullArgumentException - if realFormat is null.
      • ComplexFormat

        public ComplexFormat​(java.text.NumberFormat realFormat,
                             java.text.NumberFormat imaginaryFormat)
                      throws NullArgumentException
        Create an instance with a custom number format for the real part and a custom number format for the imaginary part.
        Parameters:
        realFormat - the custom format for the real part.
        imaginaryFormat - the custom format for the imaginary part.
        Throws:
        NullArgumentException - if imaginaryFormat is null.
        NullArgumentException - if realFormat is null.
      • ComplexFormat

        public ComplexFormat​(java.lang.String imaginaryCharacter)
                      throws NullArgumentException,
                             NoDataException
        Create an instance with a custom imaginary character, and the default number format for both real and imaginary parts.
        Parameters:
        imaginaryCharacter - The custom imaginary character.
        Throws:
        NullArgumentException - if imaginaryCharacter is null.
        NoDataException - if imaginaryCharacter is an empty string.
      • ComplexFormat

        public ComplexFormat​(java.lang.String imaginaryCharacter,
                             java.text.NumberFormat format)
                      throws NullArgumentException,
                             NoDataException
        Create an instance with a custom imaginary character, and a custom number format for both real and imaginary parts.
        Parameters:
        imaginaryCharacter - The custom imaginary character.
        format - the custom format for both real and imaginary parts.
        Throws:
        NullArgumentException - if imaginaryCharacter is null.
        NoDataException - if imaginaryCharacter is an empty string.
        NullArgumentException - if format is null.
      • ComplexFormat

        public ComplexFormat​(java.lang.String imaginaryCharacter,
                             java.text.NumberFormat realFormat,
                             java.text.NumberFormat imaginaryFormat)
                      throws NullArgumentException,
                             NoDataException
        Create an instance with a custom imaginary character, a custom number format for the real part, and a custom number format for the imaginary part.
        Parameters:
        imaginaryCharacter - The custom imaginary character.
        realFormat - the custom format for the real part.
        imaginaryFormat - the custom format for the imaginary part.
        Throws:
        NullArgumentException - if imaginaryCharacter is null.
        NoDataException - if imaginaryCharacter is an empty string.
        NullArgumentException - if imaginaryFormat is null.
        NullArgumentException - if realFormat is null.
    • Method Detail

      • getAvailableLocales

        public static java.util.Locale[] getAvailableLocales()
        Get the set of locales for which complex formats are available.

        This is the same set as the NumberFormat set.

        Returns:
        available complex format locales.
      • format

        public java.lang.StringBuffer format​(Complex complex,
                                             java.lang.StringBuffer toAppendTo,
                                             java.text.FieldPosition pos)
        Formats a Complex object to produce a string.
        Parameters:
        complex - the object to format.
        toAppendTo - where the text is to be appended
        pos - On input: an alignment field, if desired. On output: the offsets of the alignment field
        Returns:
        the value passed in as toAppendTo.
      • format

        public java.lang.StringBuffer format​(java.lang.Object obj,
                                             java.lang.StringBuffer toAppendTo,
                                             java.text.FieldPosition pos)
                                      throws MathIllegalArgumentException
        Formats a object to produce a string. obj must be either a Complex object or a Number object. Any other type of object will result in an IllegalArgumentException being thrown.
        Parameters:
        obj - the object to format.
        toAppendTo - where the text is to be appended
        pos - On input: an alignment field, if desired. On output: the offsets of the alignment field
        Returns:
        the value passed in as toAppendTo.
        Throws:
        MathIllegalArgumentException - is obj is not a valid type.
        See Also:
        Format.format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition)
      • getImaginaryCharacter

        public java.lang.String getImaginaryCharacter()
        Access the imaginaryCharacter.
        Returns:
        the imaginaryCharacter.
      • getImaginaryFormat

        public java.text.NumberFormat getImaginaryFormat()
        Access the imaginaryFormat.
        Returns:
        the imaginaryFormat.
      • getInstance

        public static ComplexFormat getInstance()
        Returns the default complex format for the current locale.
        Returns:
        the default complex format.
      • getInstance

        public static ComplexFormat getInstance​(java.util.Locale locale)
        Returns the default complex format for the given locale.
        Parameters:
        locale - the specific locale used by the format.
        Returns:
        the complex format specific to the given locale.
      • getInstance

        public static ComplexFormat getInstance​(java.lang.String imaginaryCharacter,
                                                java.util.Locale locale)
                                         throws NullArgumentException,
                                                NoDataException
        Returns the default complex format for the given locale.
        Parameters:
        locale - the specific locale used by the format.
        imaginaryCharacter - Imaginary character.
        Returns:
        the complex format specific to the given locale.
        Throws:
        NullArgumentException - if imaginaryCharacter is null.
        NoDataException - if imaginaryCharacter is an empty string.
      • getRealFormat

        public java.text.NumberFormat getRealFormat()
        Access the realFormat.
        Returns:
        the realFormat.
      • parse

        public Complex parse​(java.lang.String source)
                      throws MathParseException
        Parses a string to produce a Complex object.
        Parameters:
        source - the string to parse.
        Returns:
        the parsed Complex object.
        Throws:
        MathParseException - if the beginning of the specified string cannot be parsed.
      • parse

        public Complex parse​(java.lang.String source,
                             java.text.ParsePosition pos)
        Parses a string to produce a Complex object.
        Parameters:
        source - the string to parse
        pos - input/ouput parsing parameter.
        Returns:
        the parsed Complex object.