org.apache.commons.math3.complex

## Class ComplexFormat

- java.lang.Object
- - org.apache.commons.math3.complex.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.
  Version:
    $Id: ComplexFormat.java 1416643 2012-12-03 19:37:14Z tn $

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private static java.lang.String` | `DEFAULT_IMAGINARY_CHARACTER` The default imaginary character.
    `private java.lang.String` | `imaginaryCharacter` The notation used to signify the imaginary part of the complex number.
    `private java.text.NumberFormat` | `imaginaryFormat` The format used for the imaginary part.
    `private java.text.NumberFormat` | `realFormat` The format used for the real part.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ComplexFormat()` Create an instance with the default imaginary character, 'i', and the default number format for both real and imaginary parts.
    `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.
    `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.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `format(Complex c)` This method calls `format(Object,StringBuffer,FieldPosition)`.
    `java.lang.StringBuffer` | `format(Complex complex, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)` Formats a `Complex` object to produce a string.
    `java.lang.String` | `format(java.lang.Double c)` This method calls `format(Object,StringBuffer,FieldPosition)`.
    `java.lang.StringBuffer` | `format(java.lang.Object obj, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)` Formats a object to produce a string.
    `private java.lang.StringBuffer` | `formatImaginary(double absIm, java.lang.StringBuffer toAppendTo, java.text.FieldPosition pos)` Format the absolute value of the imaginary part.
    `static java.util.Locale[]` | `getAvailableLocales()` Get the set of locales for which complex formats are available.
    `java.lang.String` | `getImaginaryCharacter()` Access the imaginaryCharacter.
    `java.text.NumberFormat` | `getImaginaryFormat()` Access the imaginaryFormat.
    `static ComplexFormat` | `getInstance()` Returns the default complex format for the current locale.
    `static ComplexFormat` | `getInstance(java.util.Locale locale)` Returns the default complex format for the given locale.
    `static ComplexFormat` | `getInstance(java.lang.String imaginaryCharacter, java.util.Locale locale)` Returns the default complex format for the given locale.
    `java.text.NumberFormat` | `getRealFormat()` Access the realFormat.
    `Complex` | `parse(java.lang.String source)` Parses a string to produce a `Complex` object.
    `Complex` | `parse(java.lang.String source, java.text.ParsePosition pos)` Parses a string to produce a `Complex` object.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DEFAULT_IMAGINARY_CHARACTER

          private static final java.lang.String DEFAULT_IMAGINARY_CHARACTER

      The default imaginary character.
      See Also:
        Constant Field Values

    - #### imaginaryCharacter

          private final java.lang.String imaginaryCharacter

      The notation used to signify the imaginary part of the complex number.

    - #### imaginaryFormat

          private final java.text.NumberFormat imaginaryFormat

      The format used for the imaginary part.

    - #### realFormat

          private final java.text.NumberFormat realFormat

      The format used for the real 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.String format(Complex c)

      This method calls `format(Object,StringBuffer,FieldPosition)`.
      Parameters:
        `c` - Complex object to format.
      Returns:
        A formatted number in the form "Re(c) + Im(c)i".

    - #### format

          public java.lang.String format(java.lang.Double c)

      This method calls `format(Object,StringBuffer,FieldPosition)`.
      Parameters:
        `c` - Double object to format.
      Returns:
        A formatted number.

    - #### 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.

    - #### formatImaginary

          private java.lang.StringBuffer formatImaginary(double absIm,
                                               java.lang.StringBuffer toAppendTo,
                                               java.text.FieldPosition pos)

      Format the absolute value of the imaginary part.
      Parameters:
        `absIm` - Absolute value of the imaginary part of a complex number.
        `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.

Copyright (c) 2003-2013 Apache Software Foundation