Class ComplexFormat

All Implemented Interfaces:
Serializable, Cloneable

public class ComplexFormat extends CompositeFormat
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:
$Revision: 983921 $ $Date: 2010-08-10 12:46:06 +0200 (mar. 10 août 2010) $
See Also:
  • Constructor Details

    • 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(NumberFormat format)
      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.
    • ComplexFormat

      public ComplexFormat(NumberFormat realFormat, NumberFormat imaginaryFormat)
      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.
    • ComplexFormat

      public ComplexFormat(String imaginaryCharacter)
      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.
    • ComplexFormat

      public ComplexFormat(String imaginaryCharacter, NumberFormat format)
      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.
    • ComplexFormat

      public ComplexFormat(String imaginaryCharacter, NumberFormat realFormat, 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.
      Parameters:
      imaginaryCharacter - The custom imaginary character.
      realFormat - the custom format for the real part.
      imaginaryFormat - the custom format for the imaginary part.
  • Method Details

    • getAvailableLocales

      public static 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.
    • formatComplex

      public static String formatComplex(Complex c)
      This static method calls Format.format(Object) on a default instance of ComplexFormat.
      Parameters:
      c - Complex object to format
      Returns:
      A formatted number in the form "Re(c) + Im(c)i"
    • format

      public StringBuffer format(Complex complex, StringBuffer toAppendTo, 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 StringBuffer format(Object obj, StringBuffer toAppendTo, FieldPosition pos)
      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.
      Specified by:
      format in class Format
      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:
      IllegalArgumentException - is obj is not a valid type.
      See Also:
    • getImaginaryCharacter

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

      public 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(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.
    • getRealFormat

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

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

      public Complex parse(String source, 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.
    • parseObject

      public Object parseObject(String source, ParsePosition pos)
      Parses a string to produce a object.
      Specified by:
      parseObject in class Format
      Parameters:
      source - the string to parse
      pos - input/ouput parsing parameter.
      Returns:
      the parsed object.
      See Also:
    • setImaginaryCharacter

      public void setImaginaryCharacter(String imaginaryCharacter)
      Modify the imaginaryCharacter.
      Parameters:
      imaginaryCharacter - The new imaginaryCharacter value.
      Throws:
      IllegalArgumentException - if imaginaryCharacter is null or an empty string.
    • setImaginaryFormat

      public void setImaginaryFormat(NumberFormat imaginaryFormat)
      Modify the imaginaryFormat.
      Parameters:
      imaginaryFormat - The new imaginaryFormat value.
      Throws:
      NullArgumentException - if imaginaryFormat is null.
    • setRealFormat

      public void setRealFormat(NumberFormat realFormat)
      Modify the realFormat.
      Parameters:
      realFormat - The new realFormat value.
      Throws:
      NullArgumentException - if realFormat is null.